蓝派网(www.lan27.com)-精选网络资源,分享和交流! 文章首页站内搜索在线手册广告代码酷站欣赏万年历
您现在的位置: 蓝派网 >> 文章中心 >> 数据库 >> Access >> 正文

在 Access 里使用查询建立 存储过程/视图, 并使用ASP执行

作者:佚名    文章来源:网络    更新时间:2008-3-20 0:15:40
摘要: 本文演示了 使用 Access查询 构造类似于 MSSQL 存储过程的功能, 并在 ASP 中操作插入数据,显示数据功能.


目录:

1. 在 Access 查询里建表, 名 tt
2. 在 Access 查询里新建查询, 内容为:...

3. 在 ASP 里使用 tt_insertParm 添加10条记录到 表tt
3.1 构造ASP ado 连接函数, fCreateCnn 与 fCloseCnn
3.2 组合使用 fCreateCnn, fCloseCnn, tt_insertParm 添加记录

4. 在 Access 查询里 创建 显示数据用的 存储过程/视图, 内容:...
5. 在 ASP 里使用 tt_selectParm 选取数据
6. 完.


1. 在 Access 查询里建表, 名 tt

输入以下内容到查询, 并执行, 执行后就新建表 tt 了.
create table tt 
( 
id autoIncrement  
primary key,  
title varchar(255), 
content memo, 
dateandtime date 
)

说明: 
id 字段为自动编号, 并且为主键
title 为文本类型, 长度 255
content 为备注类型
dateandtime 为日期类型


2. 在 Access 查询里新建查询, 内容为:
 
parameters spTitle varchar(255),spContent varchar(255); 
insert into tt(title, content, dateandtime) 
values([spTitle], [spContent], now())

保存名为: tt_insertParm
作用为: 添加记录到 Access 的存储过程
注: spContent 字段里, 某某无法使用 memo 数据类型.


3. 在 ASP 里使用 tt_insertParm 添加10条记录到 表tt

3.1 构造ASP ado 连接函数, fCreateCnn 与 fCloseCnn
 
<% 
function fCreateCnn(cnn) 
    set cnn=createObject("adodb.connection") 
end function 
function fCloseCnn(cnn) 
        cnn.close 
    set cnn=nothing 
end function 
%>

3.2 组合使用 fCreateCnn, fCloseCnn, tt_insertParm 添加记录
 
<%  
    dim title, content 
        title="insert title" 
        content="insert content" 
    dim cnn, rs 
    dim i 
    call fCreateCnn(cnn) 
        cnn.open conn 
        for i=1 to 10 
            cnn.execute("exec tt_insertParm "&title&i&","&content&i) 
        next 
    call fCloseCnn(cnn) 
    if err.number=0 then response.Write "数据已添加" else response.Write "发生错误, 数据未添加" 
%>


4. 在 Access 查询里 创建 显示数据用的 存储过程/视图, 内容:
 
PARAMETERS qId Long; 
SELECT * 
FROM tt 
WHERE id=iif(isNull([qId]),id,[qId])

保存名为: tt_selectParm
说明: 如果 qId 参数值为空, 则选取所有数据, 否则选取 qId 对应的行


5. 在 ASP 里使用 tt_selectParm 选取数据
 
<%  
    dim qId, fldNum, i 
        qId = 10 
    dim cnn, rs 
    call fCreateCnn(cnn) 
            cnn.open conn 
        set rs = cnn.execute("EXEC tt_selectParm " & qId)  
        'set rs = cnn.execute("EXEC tt_selectParm null")  
            fldNum=rs.fields.count-1 
            do until rs.eof  
                 for i=0 to fldNum 
                    response.write rs(i) 
                    response.write " " 
                next 
                   response.write "<br/>" 
                   rs.movenext  
            loop  
            rs.close 
        set rs=nothing 
    call fCloseCnn(cnn) 
%>


6. 完.

附注: 还有 更新,删除数据 的 存储过程/视图 没有演示, 不过相信你如果看了以上操作, 这个应该不是问题了. 
摘自:http://blog.csdn.net/btbtd/archive/2006/08/30/1145678.aspx 

发表评论】【打印此文】【关闭窗口】【点击数:
★好玩的休闲小游戏★