帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP编程
ADO如何建立修改删除表 
作者: 发布时间:2005-03-12 来源:
可以使用ASP在程式当中直接建立修改删除表

与表有关的SQL语法如下:



建立一个表:CREATE TABLE表达式。

修改一个表:ALTER TABLE表达式。

删除一个表:DROP TABLE表达式。

建立一个索引:使用CREATE INDEX 或 ALTER TABLE表达式。

删除一个索引:DROP INDEX表达式。


详细介绍如下:

CREATE TABLE表达式

CREATE TABLE表达式,建立一个新的表。

语法如下:

CREATE TABLE 新表(新字段名称1 字段类型 [(长度)] [NOT NULL] [索引1] [,新字段名称2 字段类型 [(长度)] [NOT NULL] [索引2] [, ...]] [, CONSTRAINT multifieldindex [, ...]])

长度为字符类型及字符长度。

索引1, 索引2 CONSTRAINT子句定义单一字段索引。

multifieldindex定义一多重字段索引。

使用CREATE TABLE表达式,如果将一字段指定为NOT NULL,则在此字段中新增的记录资料内容必须是有效的资料。

CONSTRAINT子句可在一字段上建立不同的限制,并且也可以用来建立主索引。

您可以使用CREATE INDEX表达式,在现有的表上建立一个主索引或多个索引。

让我们看一个在ASP程式码当中使用这个SQL指令的例子。

譬如ASP程式码rs61.asp如下,[CREATE TABLE 学员 (姓名 TEXT(10), 年龄 INT)] 先建立一个学员的表,包括10个位元长度TEXT类型的姓名字段,和整数类型的年龄字段:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

sql = "CREATE TABLE 学员 (姓名 TEXT(10), 年龄 INT)"

Set a = conn1.Execute(sql)

Response.Write "CREATE TABLE OK<p>"

conn1.Close

%>

执行后,使用Access打开NtopSamp.mdb文件时,可看到新建立一个学员的表。

ALTER TABLE表达式

ALTER TABLE表达式,修改已建立好的表。

语法如下:

ALTER TABLE 表 {ADD {COLUMN 字段名称 字段类型[(长度)] [NOT NULL] [CONSTRAINT 索引] |
CONSTRAINT multifieldindex} |
DROP {COLUMN 字段名称 I CONSTRAINT 多重字段索引名称} }

使用ALTER TABLE表达式,您可以利用多种不同方法,变更目前已存在的表:


使用ADD COLUMN新增字段到表。

使用DROP COLUMN删除一字段。只需指定欲删除之字段名称即可。

使用ADD CONSTRAINT新增多重字段索引。

使用DROP CONSTRAINT删除多重字段索引。只需指定紧接在CONSTRAINT之后的索引名称即可。

使用ADD COLUMN新增字段到表时,必须指定字段名称、所属类型、以及类型和长度。


例如,下例增加一个2个字符长度,名为性别的字符类型字段到学员表中:

ALTER TABLE 学员 ADD COLUMN 性别 TEXT(2)

您也可以对此字段定义索引。

如果您对一字段指定 NOT NULL,则在此字段中所新增的记录资料必须是有效的资料。

您不能同时新增或删除多个字段或索引。

譬如ASP程式码rs63.asp如下,[CREATE TABLE 学员1 (姓名 TEXT(10), 年龄 INT)] 先建立一个学员1的表,然后使用 [ALTER TABLE 学员1 ADD COLUMN 性别 TEXT(2)] 增加一个2个字符长度,名为性别的字符类型字段到学员1表中:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

sql = "CREATE TABLE 学员1 (姓名 TEXT(10), 年龄 INT)"

Set a = conn1.Execute(sql)

Response.Write "CREATE TABLE OK<p>"

sql = "ALTER TABLE 学员1 ADD COLUMN 性别 TEXT(2)"

Set a = conn1.Execute(sql)

Response.Write "ALTER TABLE OK<p>"

conn1.Close

%>

执行后,使用Access打开NtopSamp.mdb文件时,可看到表学员1新建立一个姓别的字段。

DROP表达式

DROP表达式从一个数据库中删除一个已存在的表,或从一个表中删除一个已存在的索引。

语法如下:

DROP {TABLE 表 | INDEX 索引 ON 表}

表必须先关闭,才能删除此表或由此表中的索引。

若要删除索引,除了使用DROP INDEX 索引 ON 表,也可以使用ALTER TABLE。

譬如ASP程式码rs62.asp如下,首先使用 [CREATE TABLE 学员2 (姓名 TEXT(10), 年龄 INT)] 先建立一个学员2的表,包括10个字符长度TEXT类型的姓名字段,和整数类型的年龄字段,然后使用 [DROP TABLE 学员2] 删除学员2的表:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

sql = "CREATE TABLE 学员2 (姓名 TEXT(10), 年龄 INT)"

Set a = conn1.Execute(sql)

Response.Write "CREATE TABLE OK<p>"

sql = "DROP TABLE 学员2"

Set a = conn1.Execute(sql)

Response.Write "DROP TABLE OK<p>"

conn1.Close

%>
转载http://asp123.on.net.cn
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·ADO如何使用Delete语法  (2005-03-12)
 ·ADO如何使用Update语法   (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·在ASP中使用数据库
·使用ASP脚本技术
·通过启动脚本来感受ASP的力量
·学习使用ASP对象和组件
·解析asp的脚本语言
·初看ASP-针对初学者
·ASP开发10条经验总结
·ASP之对象总结
·ASP与数据库应用(给初学者)
·关于学习ASP和编程的28个观点
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统