📄 数据库查询语言(2).htm
字号:
ADO+</A><BR>·<A title=介绍ActiveServerPage+
href="http://lzjx.com/w/main.asp?id=541&sx=jc">介绍 Active
Serv..</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=542&sx=jc">ASP+的几个特点</A><BR>·<A
title=ASP+支持的C#和VB语法对照表
href="http://lzjx.com/w/main.asp?id=543&sx=jc">ASP+ 支持的 C# 和
..</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=544&sx=jc">ASP+
跟踪</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=545&sx=jc">ASP+上传文件语法</A><BR>·<A
title=asp+简介、安装、以及如何显示中文
href="http://lzjx.com/w/main.asp?id=546&sx=jc">asp+简介、安装、以及如何..</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=547&sx=jc">Asp+ Web
Forms</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=548&sx=jc">ASP+中文显示之两种解决方法</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=441&sx=jc">ASP上手“快捷方式”-序言</A><BR>·<A
title=ASP上手“快捷方式”-剖析ASP脚本
href="http://lzjx.com/w/main.asp?id=442&sx=jc">ASP上手“快捷方式”-剖析..</A><BR>·<A
title=ASP上手“快捷方式”-对象和组件
href="http://lzjx.com/w/main.asp?id=443&sx=jc">ASP上手“快捷方式”-对象..</A><BR>·<A
title=ASP上手“快捷方式”-脚本示例
href="http://lzjx.com/w/main.asp?id=444&sx=jc">ASP上手“快捷方式”-脚本..</A><BR>·<A
title=ASP上手“快捷方式”-脚本编写技巧
href="http://lzjx.com/w/main.asp?id=445&sx=jc">ASP上手“快捷方式”-脚本..</A><BR>·<A
title=ASP上手“快捷方式”-样例脚本
href="http://lzjx.com/w/main.asp?id=446&sx=jc">ASP上手“快捷方式”-样例..</A><BR>·<A
title=ASP上手“快捷方式”-数据库
href="http://lzjx.com/w/main.asp?id=447&sx=jc">ASP上手“快捷方式”-数据..</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=523&sx=jc">ASP的技术特点与使用方法</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=522&sx=jc">SQL
Server访问ADO</A><BR>·<A
href="http://lzjx.com/w/main.asp?id=521&sx=jc">ASP个人上手指南</A><BR></TD></TR></TBODY></TABLE><SPAN
class=l15></SPAN></TD>
<TD vAlign=top align=middle width=1 bgColor=#cccccc></TD>
<TD vAlign=top align=middle width=592 bgColor=#ffffff>
<TABLE cellSpacing=0 cellPadding=6 width="98%" border=0>
<TBODY>
<TR>
<TD class=xx vAlign=bottom height=30>■ 基础教程 >
数据库查询语言(2)</TD></TR></TBODY></TABLE>
<TABLE height=119 cellSpacing=6 cellPadding=3 width="99%" border=0>
<TBODY>
<TR>
<TD class=xk vAlign=top align=left width="50%">
在本篇的开头,我要感谢一些朋友来信给我指出了前几篇文章中的错误。不知大家是否记得在第八篇中我举了一个简单的利用 Application
制作的页面访问计数器?有位朋友来信问我,为何当他改变计数器起始变量 NumVisits
的值后对最后的记数结果没有任何作用?起初我也大惑不解,让我们来回忆一下这段源程序,如下: <BR>< %<BR>Dim
NumVisits<BR>NumVisits=0<BR>Application.Lock<BR>Application("NumVisits")
= Application("NumVisits") + 1
<BR>Application.Unlock<BR>%><BR>欢迎光临本网页,你是本页的第 < %=
Application("NumVisits") %> 位访客 !<BR><BR> 在这段程序中,如果你试图通过改变变量
NumVisits 的值来改变记数器结果,是绝对办不到的。因为用变量的值去改变 Application
的值是不可以的,这两者是不相关的。所以这里对变量的定义和赋值都是多余的。那么我们究竟应该如何来给
Application("NumVisits") 定义一个初始值呢?请看以下修正后程序: <BR>< %<BR>If
Application("NumVisits")< 999
then<BR>Application("NumVisits")=999<BR>End
If<BR>Application.Lock<BR>Application("NumVisits")=Application("NumVisits")+1<BR>Application.Unlock<BR>%><BR>欢迎光临本网页,你是本页的第
< %= Application("NumVisits") %> 位访客 !<BR><BR> 这里的 999
就是你要设定的计数器初始值,如此一来问题就迎刃而解了。我非常感谢这位姓康的朋友给我指出了这个错误,虽然这只是一个很小的漏洞,但我们在共同学程序写程序的过程中非常需要这种严谨细致的作风,希望今后朋友们们一旦发现文中的错误即刻来信告知,我也能及时纠正,谢谢。<BR><BR>
SQL 语言可以分为两大部分:数据定义语言和数据操纵语言,继上一篇我们学习了数据操纵语言中的 Select
语句后,今天作者要继续给大家简要介绍其余的 SQL 语句。<BR><BR> SQL
是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,与支持 SQL 查询的 Select
语句的复杂性相比较,更改数据库内容的 SQL 语句就格外简单。然而对于一个 DBMS
来说,数据更新所造成的风险大大超出了数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,
DBMS 还必须协调多用户的并行更新,以确保用户和他们的更改不至于影响其他用户的作业。 <BR> 用于修改数据库内容的 SQL
语句主要有以下三个: <BR><BR> 1、 Insert,向一个表中加入新的数据行 <BR><BR> 2、
Delete,从一个表中删除数据行 <BR><BR> 3、 Update,更改数据库中已经存在的数据 <BR><BR>
首先我们来看看 Insert 的用法: <BR><BR> 标准语法: <BR> INSERT INTO
table_name<BR> (col1, col2...)<BR> VALUES(value1,
value2...)<BR><BR> 下例要将书生作为一个新的销售员加入表 Salesreps 中 <BR> Insert
Into<BR> Salesreps (name,num,sales,hire_date,income) <BR> values
('shusheng',9,10000,'23-Feb-99',2000)<BR><BR>
在此语句中,列的名称列在括号中以逗号隔开,接下去是 Value
短语和括号中同样以逗号隔开的每列数据,应该注意的是数据和列名称的顺序是相同的,而且若是字符串型则以单引号隔开。从概念上来讲,
Insert 语句建立的一个与表列结构相一致的数据行,用取自 Values
子句的数据来填充它,然后将该新行加入表中,表中的行是不排序的,因此不存在将该行插入到表的头或尾或两行之间的这个概念。 Insert
语句结束后,新行就是表的一部分了。<BR><BR> Insert 语句还可以将多行数据添加到目标表中去,在这种形式的 Insert
语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,这乍看起来似乎有些奇怪,但是在某些特定的状态下,这是非常有用的。比如,你想把
1998 年 12 月 30 日之前产生的订单编号、日期和数目从 order 表中拷贝到另一个名为 oldorder 的表中去,多行
Insert 语句为拷贝数据提供了一种紧凑而高效的方法,如下: <BR> Insert into oldorder
(Num,Date,Amount)<BR> Select Num,Date,Amount<BR> From
order<BR> Where Date<'30-12-98'<BR><BR>
这条语句看起来有些复杂,其实很简单,语句标识了接收新行的表 oldorder 和接收数据的列,完全类似于单行 Insert
语句。语句的剩余部分是一个查询,它检索 order 表中的数据。 SQL 先执行对 order 表的查询,然后将查询结果逐行插入到
oldorder 表中去。<BR><BR> 下面我们来看看 Update 的用法, Update
语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义, Set 子句则指定要更新哪些列并计算他们的值。 Update
语句总是包含 Where 语句,而且 Update 语句比较危险,所以您必须明确地认识到 Where 语句的重要性, Where
语句被用来指定需要更新的行。 <BR> 标准语法: <BR> UPDATE table_name<BR> SET
columnname1 = value1<BR> [, columname2 = value2]...<BR> WHERE
search_condition<BR><BR><BR> 以下是一个简单的 Update 语句的例子 : <BR> Update
customers<BR> Set credit=100000.00,id=99<BR> Where
name='asp'<BR><BR><BR> 在此例中我们将表 customers 中客户名为 asp 的客户的信贷值更新为 10
万并将他的 ID 变更为 99。再看下例: <BR> Update customers<BR> Set
credit=200000.00,state=021<BR> Where ID in
(80,90,100,120)<BR><BR><BR> 我们可以发现,其实 SQL 处理 Update
语句的过程就是逐行遍历所指定的表,更新其搜索条件结果为“真”的行,跳过其搜索条件结果为“假”或“空”的行。 <BR><BR>
最后,来看看 Delete 语句。 <BR><BR> 标准语法: <BR> DELETE FROM
tablename<BR> WHERE condition<BR><BR><BR>
由于它过于简单,所以所造成的后果也是严重的,虽然其中的 Where 子句是任选的,但它几乎总是存在的,若将 Where 子句从
Delete 语句中省略掉,则目标表的所有行都将被删除。看下例: <BR> Delete from order Where
ID=99 <BR><BR> 在文章的末尾,作者在给大家简要介绍一下数据定义语言。它是用来创建和修改数据库结构的一种语句,包括
Create 和 Drop 语句。 <BR><BR> 1、 Create 语句 <BR><BR> 标准语法: <BR>
CREATE TABLE table_name<BR> ( field1 datatype [ NOT NULL ],<BR>
field2 datatype [ NOT NULL ],<BR> field3 datatype [ NOT NULL
]...)<BR><BR> 如: <BR> CREATE TABLE BILLS <BR> ( NAME
CHAR(30),<BR> AMOUNT NUMBER,<BR> ACCOUNT_ID NUMBER)<BR><BR> 尽管
Create Table 比前面介绍的语句难理解一些,但仍然很直观。它将 bills
赋予一个新表,并指定表中三列的名称和数据类型。表被建立后我们就可以添入数据了。如: <BR><BR> Insert into
bills(name,amout,account_id) values('gates',100,1) <BR><BR>
如果,你觉得不再需要保存产品信息,则可用 Drop table 语句将该表及其所包含的所有数据从数据库中删除掉。 <BR><BR>
标准语法: <BR><BR> DROP TABLE table_name <BR><BR> 至此,我们已经了解了所有常用的
SQL 语句,可别小看这些貌似英文的简单语句,它们的功能十分强大,当我们编写 asp
程序时必须使用他们对数据库进行操作。从下一篇开始,作者将给大家介绍 ASP 的内建 ActiveX 组件,敬请关注。
<BR><BR>作者:书生 </TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width="98%" border=0>
<TBODY>
<TR>
<TD>■今日推荐:<A
href="http://lzjx.com/w/main.asp?id=388&sx=jc">ASP内建对象Serv</A>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=800 bgColor=#ffffff border=0>
<TBODY>
<TR>
<TD background=数据库查询语言(2).files/qw39.gif></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=1 cellPadding=5 width=800 bgColor=#ffffff border=0>
<TBODY>
<TR>
<TD class=N noWrap align=middle>
<TABLE cellSpacing=0 cellPadding=0 width="100%" bgColor=#ffffff
border=0><TBODY>
<TR>
<TD
background=数据库查询语言(2).files/qw39.gif></TD></TR></TBODY></TABLE><BR>本网站是学习网站,内容整理大多来自互联网,尽量标明了出处,如果侵犯了您的权力请通知我,立即纠正<BR>欢迎提出宝贵建议,提供相关资料,以便相互学习,共同提高!<BR>
<OBJECT
codeBase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0
height=18 width=103 classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM NAME="BGCOLOR" VALUE=""><PARAM NAME="movie" VALUE="../images/21sg.swf"><PARAM NAME="quality" VALUE="high">
<embed src="../images/21sg.swf"
quality="high"
pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"
type="application/x-shockwave-flash" width="103" height="18" ></embed>
</OBJECT></TD></TR>
<TR>
<TD height=79> </TD></TR>
<TR>
<TD align=middle>友情链接:<A href="http://www.jinsuo.com/pages/j02.asp"
target=_blank>搞笑铃声</A> </TD></TR></TBODY></TABLE></CENTER></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -