ASP程序与SQL存储过程结合使用详解(5)

来源:asp之家 时间:2011-03-25 10:50:00 

5. 同时具有返回值、输入参数、输出参数的存储进程

前面说过,在调用存储进程时,声明参数的顺序要与存储进程中定义的顺序相同。还有一点要特别注意:如果存储进程同时具有返回值以及输入、输出参数,返回值要最先声明。

为了演示这种情况下的调用方法,我们改善一下上面的例子。还是取得ID为1的用户的用户名,但是有可能该用户不具有(该用户已删除,而USERID是自增长的字段)。存储进程根据用户具有与否,返回不同的值。此时,存储进程和ASP代码如下:

/*SP5*/
CREATE PROCEDURE DBO.GETUSERNAME
--为了加深对"顺序"的印象,将以下两参数的定义顺序颠倒一下
@USERNAME VARCHAR(40) OUTPUT,
@USERID INT
AS
SET NOCOUNT ON
BEGIN
IF @USERID IS NULL RETURN
SELECT @USERNAME=USERNAME 
FROM DBO.[USERINFO] 
WHERE USERID=@USERID
IF @@ROWCOUNT>0
RETURN 1
ELSE
RETURN 0
RETURN
END
GO
'**调用同时具有返回值、输入参数、输出参数的存储进程**
DIM MYCOMM,USERID,USERNAME
USERID = 1
SET MYCOMM = SERVER.CREATEOBJECT("ADODB.COMMAND")
WITH MYCOMM
.ACTIVECONNECTION = MYCONSTR 'MYCONSTR是数据库连接字串
.COMMANDTEXT = "GETUSERNAME" '指定存储进程名
.COMMANDTYPE = 4 '表明这是一个存储进程
.PREPARED = TRUE '要求将SQL命令先行编译
'返回值要最先被声明
.PARAMETERS.APPEND .CREATEPARAMETER("RETURN",2,4)
'以下两参数的声明顺序也做相应颠倒
.PARAMETERS.APPEND .CREATEPARAMETER("@USERNAME",200,2,40)
.PARAMETERS.APPEND .CREATEPARAMETER("@USERID",3,1,4,USERID)
.EXECUTE
END WITH
IF MYCOMM(0) = 1 THEN
USERNAME = MYCOMM(1)
ELSE
USERNAME = "该用户不具有"
END IF
SET MYCOMM = NOTHING

标签:ASP,SQL,存储过程
0
投稿

猜你喜欢

  • 详解Python中的正斜杠与反斜杠

    2021-06-28 08:38:10
  • Python工程师面试题 与Python Web相关

    2021-11-10 13:00:48
  • python 使用装饰器并记录log的示例代码

    2022-02-17 02:15:03
  • 利用Python计算质数与完全数的方法实例

    2022-12-30 23:35:26
  • Oracle锁处理、解锁方法

    2024-01-20 20:15:00
  • python 实现"神经衰弱"翻牌游戏

    2023-02-08 05:34:05
  • Golang Gin 中间件 Next()方法示例详解

    2024-02-20 07:29:22
  • 使用keras做SQL注入攻击的判断(实例讲解)

    2024-01-25 12:40:36
  • 恢复master..xp_logattach(log explorer)

    2010-07-01 19:19:00
  • php删除路径下的所有文件夹和文件的代码

    2023-05-27 18:44:35
  • Django开发中的日志输出的方法

    2023-02-24 07:37:17
  • pycharm打开命令行或Terminal的方法

    2022-12-11 07:07:08
  • Python2.X/Python3.X中urllib库区别讲解

    2022-08-03 01:45:39
  • 在脚本中单独使用django的ORM模型详解

    2021-03-09 05:17:26
  • PHP中Trait及其应用详解

    2023-11-24 06:33:05
  • Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法

    2023-12-19 22:42:41
  • JS脚本加载后执行相应回调函数的操作方法

    2024-04-17 10:23:07
  • Python button选取本地图片并显示的实例

    2023-10-06 15:56:32
  • python提取图像的名字*.jpg到txt文本的方法

    2021-10-31 00:54:44
  • ASP分页类(支持多风格变换)

    2011-04-08 10:39:00
  • asp之家 网络编程 m.aspxhome.com