ASP与数据库的基础应用

数据|数据库

  一般来说,一个真正的、完整的站点是离不开数据库的,因为实际应用中,需要保存的数据很多,而且这些数据之间往往还有关联,利用数据库来管理这些数据,可以很方便的查询和更新。数据库有很多种,如: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 来做一个自己的通讯录练练手吧……

  一、建立数据库:

  用 Microsoft Access 建立一个名为 data.mdb 的空数据库,使用设计器创建一个新表。输入以下几个字段:

  字段名称  数据类型  说明      其它
  ID     自动编号  数据标识    字段大小:长整型 新值:递增 索引:有(无重复)
  username  文本    姓名      缺省值
  usermail  文本    E-mail     缺省值
  view    数字    查看次数    字段大小:长整型 默认值:0 索引:无
  indate   时间日期  加入时间    缺省值

  保存为 data.mdb 文件,为了便于说明,只是做了一个比较简单的库。

  二、连接数据库

  方法1:
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

  方法2:
  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("data.mdb")

  注意:一个页面中,只要连接一次就可以了,数据库使用完后要及时关闭连接。
  conn.Close
  Set conn = Nothing

  三、添加新记录到数据库

  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

  username = "风云突变"
  usermail = "fytb@163.com"
  indate = Now()

  sql = "insert into data (username,usermail,indata) values('"&username&"','"&usermail&"','"&indate&"')"
  conn.Execute(sql)

  conn.Close
  Set conn = Nothing

  说明:建立数据库连接;通过表单获取姓名、E-mail 字符串,Now()获取当前时间日期;使用 insert into 语句添加新记录;conn.Execute 来执行;最后关闭。

  四、选择数据库里的记录

  1.选择所有记录的字段(按记录倒序排序):sql = "select * from data order by ID desc"
  2.选择所有记录的姓名和E-mail字段(不排序):sql = "select username,usermail from data"
  3.选择姓名为“风云突变”的所有记录:sql = "select * from data where username='"风云突变"'"
  4.选择使用 163 信箱的所有记录(按查看次数排序):sql = "select * from data where usermail like '%"@163.com"%' order by view desc"
  5.选择最新的10个记录:sql = "select top 10 * from data order by ID desc"

  SQL 语句已经知道了,不过在Web应用时,还得创建一个 RecordSet 对象得到记录集,才能把从数据库里取出的值应用在网页上,如果现在将所有的记录显示在网页上就这样:

  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

  sql = "select * from data"
  Set rs = Server.CreateObject("ADODB.RecordSet")
  rs.Open sql,conn,1,1

  Do While Not rs.Eof
    Response.Write "<p>姓名:"& rs("username") &" E-mail:"& rs("usermail") &" 查看:"& rs("view") &"次 "& rs("indate") &"加入</p>"
    rs.MoveNext
  Loop

  rs.Close
  Set rs = Nothing
  conn.Close
  Set conn = Nothing

  说明:建立数据库连接;创建 rs 得到记录集;循环显示记录,rs.Eof 表示记录末,rs.MoveNext 表示移到下一个记录;最后关闭。

  五、修改(更新)数据库记录

  修改记录的E-mail:

  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

  ID = 1
  usermail = "fytb@163.com"

  sql = "update data set usermail='"&usermail&"' where ID="&CInt(ID)
  conn.Execute(sql)

  conn.Close
  Set conn = Nothing

  说明:建立数据库连接;获取记录ID、新 E-mail 字符串;使用 update 语句修改记录;conn.Execute 来执行;最后关闭。
  如果使记录的查看值加1,则:sql = "update data set view=view+1 where ID="&CInt(ID)

  六、删除数据库记录

  删除某一条记录:

  Set conn = Server.CreateObject("ADODB.Connection")
  conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq="&Server.MapPath("data.mdb")

  ID = 1

  sql = "delete from data where ID="&CInt(ID)
  conn.Execute(sql)

  conn.Close
  Set conn = Nothing

  说明:建立数据库连接;获取记录ID;使用 delete 语句删除记录;conn.Execute 来执行;最后关闭。
  删除多条记录为:sql = "delete from data where ID in (ID1,ID2,ID3)"
  删除所有记录为:sql = "delete from data"

  总结:

  以上教程是针对ASP的初学者而写的,只是介绍了一些基本的用法,在了解之后可以自己去试试,重要的在于能举一反三、综合运用。更多的语法和参数请参阅 Microsoft Access 帮助中的 Microsoft Jet SQL 参考,由于本人才疏学浅、能力有限,如有表达不明确有地方还望指出,如果在应用当中遇到什么问题,也希望能够提出。谢谢。

时间: 2024-10-31 07:17:54

ASP与数据库的基础应用的相关文章

ASP与数据库,有用的代码(转贴,摘贴)_ASP基础

ASP与数据库  ASP与数据库运用:密码验证  Microsoft 的大作ASP(Active Server  Pages)以其易学易用.扩充性好.功能多而强等优点正掀起一场新的web编程革命(从严格意义上讲,编写asp并不是编程),它以令人吃惊的发展和普及速度大有取代由perl等语言编写的CGI(Common  Gateway Interface,通用网关接口) 的势头.基于web  page方式的web管理模式已经成为潮流,看看现在的网管们,有谁不会asp的编写呢?要管理?那你可能就要用到

ASP操作数据库的类,让数据操作变得简单

对于ASP的使用者来说,在数据库操作上越简单,就有更多的时间去考虑逻辑上和应用上的代码,效率也会更高.今天俺在这里给大家提供一种数据库操作的思路,这些代码是俺在长期的ASP应用中不断完成和修正的,也已经用它完成了很多项目了,应该说直接拿去用是没有问题的.当然本人能力也有限,希望大家一起来讨论. 说明:此帖代码均是VBScript版本.另外最好你对手写ASP已经有一定的基础. 先简单介绍一下俺这个类的一些特点: 1.可同时操作多个不同类型的数据库.2.完全不用考虑数据类型的差别,再也不用想字符型字

用ASP访问数据库的几种常见方式

用ASP访问数据库的几种常见方式 ActiveX Data Objects (ADO) 是一项容易使用并且可扩展的将数据库访问添加到 Web 页的技术.可以使用 ADO 去编写紧凑简明的脚本以便连接到 Open Database Connectivity (ODBC) 兼容的数据库和 OLE DB 兼容的数据源.如果您是一个对数据库连接有一定了解的脚本编写人员,那么您将发现 ADO 命令语句并不复杂而且容易掌握.同样地,如果您是一个经验丰富的数据库编程人员,您将会正确认识 ADO 的先进的与语言

《数据库技术原理与应用教程(第2版)》——第2章 数据库的基础知识 2.1 数据库中的基本概念

第2章 数据库的基础知识 本章将介绍数据库的基础知识,包括基本概念.基本结构.应用平台及特点等.本章内容十分重要,它对全书具有提纲挈领的作用. 2.1 数据库中的基本概念 1.数据 (1)数据的概念 数据(data)是现实世界中客体在计算机中的抽象表示.具体地说,它是一种计算机内的有限个数的一组符号表示. 由于数据是一种抽象的符号表示,因此它缺少语义,在必要时须对它作出语义解释. (2)数据的性质分类 1)数据的持久性:从存储时间看,数据一般分为两部分,其中一部分与程序仅有短时间的交互关系,随着

ASP操作数据库的类_ASP CLASS类

今天俺在这裡给大家提供一种数据库操作的思路,这些代码是俺在长期的ASP应用中不断完成和修正的,也已经用它完成了很多项目了,应该说直接拿去用是没有问题的.当然本人能力也有限,希望大家一起来讨论. 说明:此帖代码均是VBScript版本.另外最好你对手写ASP已经有一定的基础. 先简单介绍一下俺这个类的一些特点: 可同时操作多个不同类型的数据库. 完全不用考虑数据类型的差别,再也不用想字符型字段加不加单引号. 调用非常简单,对数据库的主要操作一般只需要一行代码. 支持mssql事务回滚. 可自动生成

ASP操作数据库的类

今天俺在这裡给大家提供一种数据库操作的思路,这些代码是俺在长期的ASP应用中不断完成和修正的,也已经用它完成了很多项目了,应该说直接拿去用是没有问题的.当然本人能力也有限,希望大家一起来讨论. 说明:此帖代码均是VBScript版本.另外最好你对手写ASP已经有一定的基础. 先简单介绍一下俺这个类的一些特点: 可同时操作多个不同类型的数据库. 完全不用考虑数据类型的差别,再也不用想字符型字段加不加单引号. 调用非常简单,对数据库的主要操作一般只需要一行代码. 支持mssql事务回滚. 可自动生成

快速掌握ASP+Access数据库的18条安全法则

ASP+Access数据库的18条安全法则: 1.首先,我们需要过滤所有客户端提交的内容,其中包括?id=N一类,另外还有提交的html代码中的操作数据库的select及asp文件操作语法,大家可以把提交的字符转义,然后再存入数据库. 2.然后需要对访问Access数据库的页面进行授权,针对显示数据页面只能使用select语句,过滤其他的update,asp文件则分为许可访问数据库页面和限制访问页. 3.修改数库据连接文件名conn.asp为类似123ljuvo345l3kj34534v.asp

ASP和数据库技术在WAP开发中的应用

数据|数据库 利用ASP技术可以开发出动态WAP页面,将ASP技术和数据库技术相结合,则可以开发更为复杂的WAP应用.有关ASP和Web数据库的知识请读者参考专门书籍,我们这里以WML为例,说明ASP和数据库技术在WAP开发中的应用. 在WML程序中使用ASP 在WML程序中使用ASP的规则很简单,只要做到以下5条即可: (1) 声明ASP采用的脚本语言.与ASP中声明的方式类似,格式为: <%@ Language=VBScript %> (2) 声明wml文件类型.这可采用ASP的Respo

ASP中数据库安全问题之我见!

安全|数据|数据库|数据库安全|问题|安全|数据库安全   很多时候大家都为数据库的安全问题很是担心!一般大家都是把数据库的后缀弄的名字很复杂,然后把后缀名该为.ASP,但是这样是不是就绝对安全了呢!答案是肯定的,绝对不会安全的!因为别人一旦猜测出你的路径,那么把哪个数据库下载该名之后就可以用了!   有人又是用#*.asp作为数据库的存放方式,因为根据IE的编码原理,#后面的东西是不会下载的,但是一般的攻击人员都知道#在IE中的解码是%23,所以一旦他输入%23*.asp照样能给你下载你的数据