以下是ASP与数据库应用的典型例子,阅读后请补充(1)~(5)空缺的内容。 一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便地进行查询和更新。数据库有很多

admin2009-02-15  25

问题 以下是ASP与数据库应用的典型例子,阅读后请补充(1)~(5)空缺的内容。
    一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便地进行查询和更新。数据库有很多种,如Fox数据库(.dbf)、Access数据库(.mdb)、Informix、Oracle和SQL Server等等,在这里,以Microsoft Access数据库为例来说明ASP是如何访问数据库的。
   常用数据库语句如下所示:
   1.SELECT语句:命令数据库引擎从数据库里返回信息,作为一组记录。
   2.INSERT INTO语句:添加一个或多个记录至一个表。
   3.UPDATE语句:创建更新查询来改变基于特定准则的指定表中的字段值。
   4.DELETE语句:创建一个删除查询把记录从FROM子句列出并符合WHERE子句的一个或更多的表中清除。  
   5.EXECUTE语句:用于激活PROCEDURE(过程)
   用ASP来做一个通讯录:
   1.建立数据库。
   用Microsoft Access建立一个名为data.mdb的空数据库,使用设计器创建一个新表。
输入以下几个字段,如表7-1所示。
   表7-1  data mdb的宇段和属性
   保存为data.mdb文件。
   2.连接数据库。
   Set conn=(1)   
   conn.Open"driver={Microsoft Access Driver*.mdb)};dbq="&Server.MapPathCdata,mdb")
注意:一个页面中,只要连接一次就可以了,数据库使用完后要及时关闭连接。
   conn.Close
   Set conn=Nothing
   3.添加新记录到数据库。
    Set corm = Server. CreateObject("ADODB.Connection")
    corm. Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server. MapPath("data.mdb")
    usemame = "程序员"
    usermail = "xj @ 163.com"
    indate = Now()
    sq1 = "insert into data (usemame,usermail,indata) values(’"&usemame&"’,’"&usermail&", "’&indate&"’)"
       (2)   
    conn. Close
    Set conn= Nothing
   4.选择数据库里的记录。
   (1)选择所有记录的字段(按记录倒序排序):(3)。
   (2)选择所有记录的姓名和E-mail字段(不排序):sq1="select username.usermail from data"。
   (3)选择姓名为“程序员”的所有记录:(4)。
   (4)选择使用163信箱的所有记录(按查看次数排序):sq1="select*from data where usermail like’%"@163.com"%’order by view desc"。
   (5)选择最新的10个记录:sq1="select top 10*from data order by ID desc"。
   SQL语句已经知道了,不过在Web应用时,还得创建一个RecordSet对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就使用如下代码:
      Set corm =Server. CreateObject("ADODB.Cormection")
     conn. Open "driver={Microsofi Access Driver (*.mdb)};dbq="&Server. MapPath("data.mdb")
     sq1 = "select * from data"
     Set rs =Server. CreateObject("ADODB.RecordSet")
     rs. Open sql,corm, 1,1
     Do While Not rs.Eof
     Response. Write "<p>姓名: "& rs("usemame") &" E-mail: "& rs("usermail") &" 查看: "& rs("view") &"次  "& rs("indate") &"加入</p>"
     rs.MoveNext
     Loop
     rs.Close
     Set rs = Nothing
     corm. Close
     Set conn= Nothing
   说明:建立数据库连接:创建rs得到记录集:循环显示记录,rs.Eof表示记录末, rs.MoveNext表示移到下一个记录;最后关闭。
   5.修改(更新)数据库记录。
   修改记录的E-mail:
     Set corm =Server. CreateObject("ADODB.Connection")
    corm. Open "driver=- { Microsoft Access Driver (*.mdb) } ;dbq="&Server. MapPath("data.mdb")
    ID=I
    usermail = "xj @ 163.com"
    sq1 = "update data set usermail=’"&usermail&"’ where ID="&CInt(ID)
    eonn. Execute(sq1)
    conn. Close
    Set conn = Nothing
   说明:建立数据库连接;获取记录ID、新E-mail字符串;使用update语句修改记录; conn.Execute来执行;最后关闭。如果使记录的查看值加1,则sq1="update data set view=view+1 where ID="&CMt(ID)
   6.删除数据库记录。
   删除某一条记录:
           Set corm =Server. CreateObject("ADODB.Connection")
          conn.Open "driver={Microsoft Access Driver (*.mdb) };dbq="&Server. MapPath("data.mdb")
          ID=1
          sql =(5)   
          corm. Execute(sq1)
          corm. Close
          Set conn= Nothing

选项

答案(1)Server.CreateObject("ADODB.Cormection") (2)conn.Execute(sq1) 说明:建立数据库连接:通过表单获取姓名、E-mail字符串,Now()获取当前时间日期:使用insert into语句添加新记录;使用corm.Execute来执行;最后关闭。 (3)Sq1="select*from data order by ID desc" (4)sq1="select*from data where usemame=’"程序员"", (5)"delete from data where ID="& CInt(ID) 说明:建立数据库连接;获取记录ID;使用delete语句删除记录;使用corm.Execute来执行;最后关闭。 删除多条记录为:sq1="delete from data where ID in (ID1,ID2,ID3)”。 删除所有记录为:sq1="delete from data"。

解析
转载请注明原文地址:https://jikaoti.com/ti/VpD7FFFM
0

随机试题
最新回复(0)