首页 >> 读书频道 >> 电脑 >> 动态网站设计十八般武艺——ASP篇(十二)
 
· 动态网站设计十八般武艺—
· 动态网站设计十八般武艺—
· 动态网站设计十八般武艺—
· 动态网站设计十八般武艺—
· 动态网站设计十八般武艺—
· 影响Google对你的信
· Fireworks教程全
· 路由器的功能
· 路由器的作用
· 什么是路由器
· 智能ABC技巧
· 常用DOC命令
 
· 全唐诗卷四十六
· 韩剧《布拉格恋人》剧情介
· 夜航船[作者:明·张岱]
· 局外人[作者:韩·可爱淘
· 现场流行病学
· 源氏物语[日本:紫式部]
· 红楼梦:120回全本[清
· 武林寓言故事
· 2006高考录取规则
· 首批中国世界名牌产品和2
· 济南美食大全
· 管理三十六计
 
· (出租)中动商场部分及写
· (出租)中动动漫基地&#
· 喜剧学院
· 《善德女王》剧情介绍
· 魔女18号 剧情
· 丑女无敌剧情介绍
· 魔女幼熙剧情介绍
· 龙游天下剧情介绍
· 震撼世界的七日剧情介绍
· 静静的白桦林剧情介绍
· 心情日记—老公今天我想对
· 旗舰剧情介绍
欢迎来到月影社区!如果您觉得这里不错,请推荐给您的朋友们。月影社区:http://wf66.com/

动态网站设计十八般武艺——ASP篇(十二)


查看有无更新版本

关键字:ASP快速入门 2006-8-28

 

作者:天骄创作室 书生

 

在本篇的开头,我要感谢一些朋友来信给我指出了前几篇文章中的错误。不知大家是否记得在第八篇中我举了一个简单的利用Application制作的页面访问计数器?有位朋友来信问我,为何当他改变计数器起始变量NumVisits的值后对最后的记数结果没有任何作用?起初我也大惑不解,让我们来回忆一下这段源程序,如下:
<%
Dim NumVisits
NumVisits=0
Application.Lock
Application("NumVisits")=Application("NumVisits")+1
Application.Unlock
%>
欢迎光临本网页,你是本页的第<%=Application("NumVisits")%>位访客!

在这段程序中,如果你试图通过改变变量NumVisits的值来改变记数器结果,是绝对办不到的。因为用变量的值去改变Application的值是不可以的,这两者是不相关的。所以这里对变量的定义和赋值都是多余的。那么我们究竟应该如何来给Application("NumVisits")定义一个初始值呢?请看以下修正后程序:
<%
If Application("NumVisits")<999 then
Application("NumVisits")=999
End If
Application.Lock
Application("NumVisits")=Application("NumVisits")+1
Application.Unlock
%>
欢迎光临本网页,你是本页的第<%=Application("NumVisits")%>位访客!


这里的999就是你要设定的计数器初始值,如此一来问题就迎刃而解了。我非常感谢这位姓康的朋友给我指出了这个错误,虽然这只是一个很小的漏洞,但我们在共同学程序写程序的过程中非常需要这种严谨细致的作风,希望今后朋友们们一旦发现文中的错误即刻来信告知,我也能及时纠正,谢谢。

SQL语言可以分为两大部分:数据定义语言和数据操纵语言,继上一篇我们学习了数据操纵语言中的Select语句后,今天作者要继续给大家简要介绍其余的SQL语句。

SQL是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,与支持SQL查询的Select语句的复杂性相比较,更改数据库内容的SQL语句就格外简单。然而对于一个DBMS来说,数据更新所造成的风险大大超出了数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和他们的更改不至于影响其他用户的作业。

用于修改数据库内容的SQL语句主要有以下三个:

1、Insert,向一个表中加入新的数据行

2、Delete,从一个表中删除数据行

3、Update,更改数据库中已经存在的数据

首先我们来看看Insert的用法:

标准语法:
INSERT INTO table_name
(col1,col2...)
VALUES(value1,value2...)


下例要将书生作为一个新的销售员加入表Salesreps中
Insert Into
Salesreps(name,num,sales,hire_date,income)
values('shusheng',9,10000,'23-Feb-99',2000)


在此语句中,列的名称列在括号中以逗号隔开,接下去是Value短语和括号中同样以逗号隔开的每列数据,应该注意的是数据和列名称的顺序是相同的,而且若是字符串型则以单引号隔开。从概念上来讲,Insert语句建立的一个与表列结构相一致的数据行,用取自Values子句的数据来填充它,然后将该新行加入表中,表中的行是不排序的,因此不存在将该行插入到表的头或尾或两行之间的这个概念。Insert语句结束后,新行就是表的一部分了。

Insert语句还可以将多行数据添加到目标表中去,在这种形式的Insert语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,这乍看起来似乎有些奇怪,但是在某些特定的状态下,这是非常有用的。比如,你想把1998年12月30日之前产生的订单编号、日期和数目从order表中拷贝到另一个名为oldorder的表中去,多行Insert语句为拷贝数据提供了一种紧凑而高效的方法,如下:
Insert into oldorder(Num,Date,Amount)
Select Num,Date,Amount
From order
Where Date<'30-12-98'


这条语句看起来有些复杂,其实很简单,语句标识了接收新行的表oldorder和接收数据的列,完全类似于单行Insert语句。语句的剩余部分是一个查询,它检索order表中的数据。SQL先执行对order表的查询,然后将查询结果逐行插入到oldorder表中去。

下面我们来看看Update的用法,Update语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算他们的值。Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。

标准语法:
UPDATE table_name
SET columnname1=value1
[,columname2=value2]...
WHERE search_condition


以下是一个简单的Update语句的例子:
Updatecustomers
Setcredit=100000.00,id=99
Wherename='asp'


在此例中我们将表customers中客户名为asp的客户的信贷值更新为10万并将他的ID变更为99。再看下例:
Update customers
Set credit=200000.00,state=021
Where ID in(80,90,100,120)


我们可以发现,其实SQL处理Update语句的过程就是逐行遍历所指定的表,更新其搜索条件结果为“真”的行,跳过其搜索条件结果为“假”或“空”的行。

最后,来看看Delete语句。

标准语法:
DELETE FROM tablename
WHERE condition


由于它过于简单,所以所造成的后果也是严重的,虽然其中的Where子句是任选的,但它几乎总是存在的,若将Where子句从Delete语句中省略掉,则目标表的所有行都将被删除。看下例:
Delete from order Where ID=99


在文章的末尾,作者在给大家简要介绍一下数据定义语言。它是用来创建和修改数据库结构的一种语句,包括Create和Drop语句。

1、Create语句

标准语法:
CREATE TABLE table_name
(field1 datatype[NOTNULL],
field2 datatype[NOTNULL],
field3 datatype[NOTNULL]...)


如:
CREATE TABLE BILLS
(NAME CHAR(30),
AMOUNT NUMBER,
ACCOUNT_ID NUMBER)


尽管CreateTable比前面介绍的语句难理解一些,但仍然很直观。它将bills赋予一个新表,并指定表中三列的名称和数据类型。表被建立后我们就可以添入数据了。如:

Insert into bills(name,amout,account_id)values('gates',100,1)

如果,你觉得不再需要保存产品信息,则可用Drop table语句将该表及其所包含的所有数据从数据库中删除掉。

标准语法:

DROP TABLE table_name

至此,我们已经了解了所有常用的SQL语句,可别小看这些貌似英文的简单语句,它们的功能十分强大,当我们编写asp程序时必须使用他们对数据库进行操作。从下一篇开始,作者将给大家介绍ASP的内建ActiveX组件,敬请关注。

动态网站设计十八般武艺——ASP篇(十二)

[ 1 ]
动态网站设计十八般武艺——ASP篇(十二) num

打印本页 关闭

关于我们版权声明本站导航友情连结作品演示 TOP↑