asp编程有用的例子(二)

17. ASP与SQL数据库连接: 
<%@ language=VBs cript%>
<%
dim conn
set conn=server.createobject("ADODB.connection")
con.open "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;UID=sa;PWD=数据库密码;DATABASE=数据库名称
%>

建立记录集对象:

set rs=server.createobject("adodb.recordset")
rs.open SQL语句,conn,3,2

18. SQL常用命令使用方法:

(1) 数据记录筛选:

sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"

sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"

sql="select * from 数据表 where 字段名 between 值1 and 值2"

(2) 更新数据记录:

sql="update 数据表 set 字段名=字段值 where 条件表达式"

sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:

sql="delete from 数据表 where 条件表达式"

sql="delete from 数据表" (将数据表所有记录删除)

(4) 添加数据记录:

sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"

sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:

AVG(字段名) 得出一个表格栏平均值
COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名) 取得一个表格栏最大的值
MIN(字段名) 取得一个表格栏最小的值
SUM(字段名) 把数据栏的值相加

引用以上函数的方法:

sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"
set rs=conn.excute(sql)

用 rs("别名") 获取统的计值,其它函数运用同上。

(5) 数据表的建立和删除:

CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )

例:CREATE TABLE tab01(name varchar(50),datetime default now())

DROP TABLE 数据表名称 (永久性删除一个数据表)

19. 记录集对象的方法:

rs.movenext 将记录指针从当前的位置向下移一行
rs.moveprevious 将记录指针从当前的位置向上移一行
rs.movefirst 将记录指针移到数据表第一行
rs.movelast 将记录指针移到数据表最后一行
rs.absoluteposition=N 将记录指针移到数据表第N行
rs.absolutepage=N 将记录指针移到第N页的第一行
rs.pagesize=N 设置每页为N条记录
rs.pagecount 根据 pagesize 的设置返回总页数
rs.recordcount 返回记录总数
rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete 删除当前记录,但记录指针不会向下移动
rs.addnew 添加记录到数据表末端
rs.update 更新数据表记录

---------------------------------------

20 Recordset对象方法

Open方法

recordset.Open Source,ActiveConnection,CursorType,LockType,Options

Source
Recordset对象可以通过Source属性来连接Command对象。Source参数可以是一个Command对象名称、一段SQL命令、一个指定的数据表名称或是一个Stored Procedure。假如省略这个参数,系统则采用Recordset对象的Source属性。

ActiveConnection
Recordset对象可以通过ActiveConnection属性来连接Connection对象。这里的ActiveConnection可以是一个Connection对象或是一串包含数据库连接信息(ConnectionString)的字符串参数。

CursorType
Recordset对象Open方法的CursorType参数表示将以什么样的游标类型启动数据,包括adOpenForwardOnly、adOpenKeyset、adOpenDynamic及adOpenStatic,分述如下:
--------------------------------------------------------------
常数 常数值 说明
-------------------------------------------------------------
adOpenForwardOnly 0 缺省值,启动一个只能向前移动的游标(Forward Only)。
adOpenKeyset 1 启动一个Keyset类型的游标。
adOpenDynamic 2 启动一个Dynamic类型的游标。
adOpenStatic 3 启动一个Static类型的游标。
-------------------------------------------------------------
以上几个游标类型将直接影响到Recordset对象所有的属性和方法,以下列表说明他们之间的区别。

-------------------------------------------------------------
Recordset属性 adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic
-------------------------------------------------------------
AbsolutePage 不支持 不支持 可读写 可读写
AbsolutePosition 不支持 不支持 可读写 可读写
ActiveConnection 可读写 可读写 可读写 可读写
BOF 只读 只读 只读 只读
Bookmark 不支持 不支持 可读写 可读写
CacheSize 可读写 可读写 可读写 可读写
CursorLocation 可读写 可读写 可读写 可读写
CursorType 可读写 可读写 可读写 可读写
EditMode 只读 只读 只读 只读
EOF 只读 只读 只读 只读
Filter 可读写 可读写 可读写 可读写
LockType 可读写 可读写 可读写 可读写
MarshalOptions 可读写 可读写 可读写 可读写
MaxRecords 可读写 可读写 可读写 可读写
PageCount 不支持 不支持 只读 只读
PageSize 可读写 可读写 可读写 可读写
RecordCount 不支持 不支持 只读 只读
Source 可读写 可读写 可读写 可读写
State 只读 只读 只读 只读
Status 只读 只读 只读 只读
AddNew 支持 支持 支持 支持
CancelBatch 支持 支持 支持 支持
CancelUpdate 支持 支持 支持 支持
Clone 不支持 不支持
Close 支持 支持 支持 支持
Delete 支持 支持 支持 支持
GetRows 支持 支持 支持 支持
Move 不支持 支持 支持 支持
MoveFirst 支持 支持 支持 支持
MoveLast 不支持 支持 支持 支持
MoveNext 支持 支持 支持 支持
MovePrevious 不支持 支持 支持 支持
NextRecordset 支持 支持 支持 支持
Open 支持 支持 支持 支持
Requery 支持 支持 支持 支持
Resync 不支持 不支持 支持 支持
Supports 支持 支持 支持 支持
Update 支持 支持 支持 支持
UpdateBatch 支持 支持 支持 支持
--------------------------------------------------------------
其中NextRecordset方法并不适用于Microsoft Access数据库。

LockType
Recordset对象Open方法的LockType参数表示要采用的Lock类型,如果忽略这个参数,那么系统会以Recordset对象的LockType属性为预设值。LockType参数包含adLockReadOnly、adLockPrssimistic、adLockOptimistic及adLockBatchOptimistic等,分述如下:

-------------------------------------------------------------
常数 常数值 说明
--------------------------------------------------------------
adLockReadOnly 1 缺省值,Recordset对象以只读方式启动,无法运行AddNew、Update及Delete等方法
adLockPrssimistic 2 当数据源正在更新时,系统会暂时锁住其他用户的动作,以保持数据一致性。
adLockOptimistic 3 当数据源正在更新时,系统并不会锁住其他用户的动作,其他用户可以对数据进行增、删、改的操作。
adLockBatchOptimistic 4 当数据源正在更新时,其他用户必须将CursorLocation属性改为adUdeClientBatch才能对数据进行增、
删、改的操作。

时间: 2024-09-23 09:14:17

asp编程有用的例子(二)的相关文章

asp编程有用的例子(一)

1.如何用Asp判断你的网站的虚拟物理路径 答:使用Mappath方法 < p align="center" >< font size="4" face="Arial" >< b > The Physical path to this virtual website is: < /b >< /font > < font color="#FF0000" size=

ASP编程入门进阶(二):认识表单

编程 申明:asp编程入门进阶系列文章COPY自http://www.cnbruce.com/blog/ 部分运行代码请到该站进行在线测试说实话,无论是asp,php还是jsp进行网络编程的时候,都离不开和用户的交互.而人机对话的平台,基本上是靠相应的文本.列表框进行输入,然后通过按钮提交送至数据库的.所以学习网络编程就一定要了解这些输入平台相关的东西:表单(form)其基本格式如下:<form name="form1" action="xxx.asp" me

ASP编程入门进阶(二):认识表单_ASP基础

说实话,无论是asp,php还是jsp进行网络编程的时候,都离不开和用户的交互.而人机对话的平台,基本上是靠相应的文本.列表框进行输入,然后通过按钮提交送至数据库的.所以学习网络编程就一定要了解这些输入平台相关的东西:表单(form)其基本格式如下:<form name="form1" action="xxx.asp" method="post"> <input type="text" name="

ASP编程入门进阶(二十):ADO组件之显示数据记录

ado|编程|数据|显示|ado 学习ASP的万里长征就快到终点了:等把ASP的ADO组件搞定.当然这也是最重要的一步,几乎前面所有的学习都是为了这个最终的目的.OK,下面就来详细系统地来一一掌握,步步为营,各个击破. 一,拥有数据库 可以这么说:静态页面和动态页面最大的区别就是采用了数据库.有关一个WEB程序采用数据库和不采用的优越性比较,就不去细细分析了,主要精力还是放在如何使用数据库,如何熟练运用数据库,如何更灵活地运用数据库等等--其中运用操作数据库主要是对数据库内容进行:显示.插入.修

ASP编程入门进阶(二十):ADO组件之插入数据记录

ado|编程|插入|数据|ado 简单的显示记录已经掌握,现在需要的就是通过ASP将信息内容插入到数据库中. 一.拥有数据库cnbruce.mdb 本数据库的作用就是用来被插入数据的,可以直接采用上节中已经建立的cnbruce.mdb文件,当然连接打开数据库的文件conn.asp也就顺利引用了. 二.建立输入插入信息的页面平台addit.html 本页的主要作用是:显示一些文本输入框以用来提供输入信息内容提交数据库. 1,addit.html<form action="addit.asp&

ASP编程入门进阶(二十):ADO组件之分页程序

ado|编程|程序|分页|ado|分页 应该来说,学会了如何插入记录,如何显示记录,那么现在简单的完整的文章系统.新闻系统和留言系统不成问题.那接着下面的问题就是:随着信息内容的不段增加,单独通过一张页面显示所有信息是不行也是很不理性的.所以,解决的办法就是采用分页技术. 1,rs.RecordCount很显然,RecordCount就是用来显示数据库表中一共多少条记录的,也可以形象地说表中一共有多少行.经常用在分页中就是一共有N篇文章等总计的信息显示. 2,rs.PageSizers.Page

ASP编程入门进阶(二十):ADO组件之修改数据记录

ado|编程|数据|ado 再来小总结一下:对数据库的操作无非就是显示记录,插入记录,修改记录,删除记录,查询记录. 并且在有关显示记录的时候还涉及到显示的输出格式.分页程序,那么再结合插入记录,一个简单的新闻系统,文章系统,留言系统,注册登陆系统不成任何问题. 下面就涉及到管理这块,需要对数据库记录进行修改. 首先,要修改哪条 修改,不是笼而统之的,而是要针对某条具体对相应修改.可以形象地说,就是对数据库表中的具体哪一行进行具体的修改.所以,这时候的记录集就有它特定的某个,当然这个主要还是由S

ASP编程入门进阶(二十):ADO组件之删除数据记录

ado|编程|数据|ado 1,首先要明确删除哪条记录 无非还就是SQL语句了,比如对应到特定的某ID上. id = request.form("id")sql = "Select * from cnarticle where cn_id="&idSet rs = Server.CreateObject ("ADODB.Recordset")rs.Open sql,conn,2,3 2,很简单的一条语句:删除 rs.delete 3,最好

ASP编程常用的代码(二)--翻页代码

编程|翻页    <p><%MaxPerPage=8 '定义页面最大的记录数为8<br>   if not isempty(request("page")) then <br>   currentPage=cint(request("page")) 'currentpage我们作为当前页面的变量,获得当前页的数值<br>   else<br>   currentPage=1 '如果为空就设为1<