|
![]() |
名片设计 CorelDRAW Illustrator AuotoCAD Painter 其他软件 Photoshop Fireworks Flash |
|
Insert可以使一个表新增一个或多个记录: INSERT INTO:新增一个记录。 INSERT INTO…SELECT:新增多个记录。 一、INSERT INTO 新增一个记录的INSERT INTO语法如下: INSERT INTO 表 [(字段1[,字段2[, ...]])] VALUES (值1[,值2[, ...]) 新增的记录,将依照指定字段排列的顺序插入对应的值,譬如值1将被插入至字段1,值2将被插入至字段2,依此类推。 若未指定 (字段1[,字段2[, ...]]) ,将依照表所定义的字段排列的顺序插入对应的值,在VALUES 子句必须包含表中的每一字段值。 值间须使用逗点分隔,文字字段须使用单用引号 (\\\'值\\\') 括起来。 譬如ASP程式码rs7.asp如下,[Insert Into 产品(代号,名称,价格,数量) Values(\\\'C2000\\\',\\\'Computre 2000\\\',2000,2)] 和 [Insert Into 产品 Values(\\\'C2000\\\', \\\'Computre 2000\\\',3000,3,\\\'1/1/99\\\',\\\' \\\',\\\'电脑\\\')] 在产品表各新增一笔资料: <% Set conn1 = Server.CreateObject("ADODB.Connection") conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" sql = "Insert Into 产品(代号,名称,价格,数量) Values(\\\'C2000\\\',\\\'Computre 2000\\\',2000,2)" Set a = conn1.Execute(sql) sql = "Insert Into 产品 Values(\\\'C2000\\\',\\\'Computre 2000\\\',3000,3,\\\'1/1/99\\\',\\\' \\\',\\\'电脑\\\')" Set a = conn1.Execute(sql) Set rs3 = Server.CreateObject("ADODB.Recordset") sql = "Select * from 产品 where 代号 =\\\'C2000\\\'" rs3.Open sql,conn1,1,1,1 %> <TABLE COLSPAN=8 CELLPADDING=5 BORDER=0> <TR> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代号 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名称 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">价格 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">数量 </FONT></TD> </TR> <% Do while not rs3.EOF %> <TR> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("代号")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("名称")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("价格")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("数量")%></TD> </TR> <% rs3.MoveNext Loop rs3.Close %> </TABLE> 以上的 ASP程式码rs7.asp,执行的结果,显示新增两个记录资料。 二、Insert Into...Select 若要新增多个记录,可以使用INSERT INTO…SELECT,语法如下: INSERT INTO 表 [IN 外部资料库] [(字段1[,字段2[, ...]])] SELECT [表.]字段1[, 字段2[, ...] FROM 表 假如表包含一个主索引,须确定新增到主索引字段的值是唯一的且不可为Null值。 原表的字段为自动编号类型时,假如您要将新增记录重新编号,就不要在查询之中包含自动编号字段。若要保持原字段中的值,则将自动编号加在查询之中。 INSERT INTO将所新增的记录加入原有的表之中。若要建立一个新的表,可以使用 SELECT... INTO 的语句。 让我们看一个在ASP程式中使用这个SQL指令的例子。 譬如ASP程式码rs7.asp如下,[Insert Into 产品(代号,名称,价格,数量) Select 代号,名称,价格*10,数量*10 From 产品 where 代号 =\\\'C2000\\\'],将代号为C2000的价格和数量都乘予10後,再新增记录: <% sql = "Insert Into 产品(代号,名称,价格,数量) Select 代号,名称,价格*10,数量*10 From 产品 where 代号 =\\\'C2000\\\'" Set a = conn1.Execute(sql) Set rs3 = Server.CreateObject("ADODB.Recordset") sql = "Select * from 产品 where 代号 =\\\'C2000\\\'" rs3.Open sql,conn1,1,1,1 %> <TABLE COLSPAN=8 CELLPADDING=5 BORDER=0> <TR> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">代号 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">名称 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">价格 </FONT></TD> <TD ALIGN=CENTER BGCOLOR="#800000"><FONT COLOR="#FFFFFF">数量 </FONT></TD></TR> <% Do while not rs3.EOF %><TR> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("代号")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("名称")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("价格")%></TD> <TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs3("数量")%></TD></TR> <% rs3.MoveNext Loop rs3.Close %> </TABLE> 以上的 ASP程式rs7.asp,在用户端使用浏览器,浏览执行的结果,代号为C2000的有两个记录,最后两个为新增的记录,将价格和数量都乘以10。 返回类别: 教程 上一教程: 调用WINZIP命令行对上传的多个文件打包压缩 下一教程: ASP实现语音分时问候 您可以阅读与"ADO如何使用INSERT语法"相关的教程: · ADO如何使用UPDATE语法呢(BIG5) · 如何使用ASP制作模似动态生长的表单 · 如何使用FSO搜索硬盘文件 · 如何使用ASP创建DSN · 如何使用JAVASCRIPT来写ASP程序 |
![]() ![]() |
快精灵印艺坊 版权所有 |
首页![]() ![]() ![]() ![]() ![]() ![]() ![]() |