当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp 存贮过程 (SQL版asp调用存储过程)

ASP
使用FSO自动创建多级文件夹的函数
专家教你利用思易ASP木马追捕入侵站点
技巧:用 isapi rewrite 实现asp的HTML静态化
使用ASP建设私人的搜索引擎
巧用SQL-DMO创建备份及校验的ASP应用
技巧:用GetString来提高ASP的速度
ASP实现的日历代码实例程序
WEB应用的缓存兼容性设计
用网站地图帮助搜索引擎
IIS虚拟主机网站防木马权限设置安全配置整理
ASP把长的数字用逗号隔开显示
所谓新云XSS跨站漏洞全公布
ASP技巧:禁用页面缓存的五种方法
ASP中实现从dbf数据库导出数据到sql表
简单熟悉掌握ASP的语法和变量
让弹出窗口变得“听话”一些
运用ASP调用数据库中视图及存储过程
瞄准Apache IIS7向开源张开双臂
ASP实现IE地址栏参数的判断
如何让你的ASP运行于非Windows平台

ASP 中的 asp 存贮过程 (SQL版asp调用存储过程)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 63 ::
收藏到网摘: n/a

存贮过程(SQL样版)
今天发个SQL存贮过程给大家认识
复制代码 代码如下:

CREATE PROCEDURE login_verify
(
@community_id int, --拿值
@username varchar(20),
@password varchar(40),
@result tinyint output
)
AS
set nocount ON

declare @service_deadline_date smalldatetime,@community_setting_max_online_count int ---定义一个变量为 短日期格式
select @community_setting_max_online_count=community_setting_max_online_count,@service_deadline_date=service_deadline_date from community_info where community_id=@community_id --这里是求最大登录人数
if datediff(d,@service_deadline_date,getdate())>10 --其实这个是限制用户的使用期,求当前日期与库中的记录日期如时大于10天,则返回@result =11
begin
set @result=11 --超过使用期
return
end

if (select count(*) from online_user where =@community_setting_max_online_count">community_id=@community_id)>=@community_setting_max_online_count --根据库中的记录设定与当前人数比较
begin
set @result=10 --超出在线人数限制 --返回@result=10
return
end

declare @stamia int,@last_update_stamia_date smalldatetime,@level_id int --定义变量 整型 短日期型 整型
declare @userid int ,@user_role int
select @userid=userid,@user_role=user_role,@stamia=stamia,@last_update_stamia_date=last_update_stamia_date,@level_id=level_id from user_info where username=@username and password=@password and community_id=@community_id and user_type=0
--从用户信息表中,将一些信息写入到定义的三个变量中
if @userid is not null ----如果@userid 不变null值
begin --用户名和密码校验成功
set @result=1 --检验成功
return
end
else
begin
set @result=0 ---登录失败
end
set nocount OFF
GO

我们给上面的过程取个名login_verify叫做
写成是ASP代码中调用安全认证的地方
'''事先已经定义好conn
Set cmd.ActiveConnection=conn
cmd.CommandText="login_verify"
cmd.CommandType=&H0004
@community_id int, --拿值
@username varchar(20),
@password varchar(40),
@result int
cmd.Parameters.Append cmd.CreateParameter("@community_id",3)
cmd.Parameters.Append cmd.CreateParameter("@username ",200)
cmd.Parameters.Append cmd.CreateParameter("@password",200)
cmd("@community_id")=session("community_id")
cmd("@username")=request("userid")
cmd("@password")=request("userid")
cmd.execute
dim result
result=cmd("@result")
conn.close
if trim(result)="1" then

'''''''''''''登录成功的提示与操作
else
''''''''''''''''''''''登录失败的提示与操作
end if