首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

对带返回值的存储过程操作有关问题

2012-03-01 
对带返回值的存储过程操作问题请问,在存储过程中,输出参数和返回值有什么不同呢?在sql2000查询分析器里面

对带返回值的存储过程操作问题
请问,在存储过程中,
  输出参数和返回值有什么不同呢?
  在sql2000查询分析器里面执行带输入参数输出参数还有返回值的存储过程“execute***”怎么写呢?在vs2005中又是怎么表达,怎么样获取它的返回值呢?

  请路过的高手不吝赐教,谢谢!

   
 

[解决办法]
SqlCommand 的CommandType 设置为StoredProcedure 存储过程
参数用SqlParameter设置和得到

[解决办法]
这是我写的一个判断数据库中某个表的某个(或者几个)字段的相同记录数的存储过程 对于你的问题 只看前6行和最后3行就行了 (可以直接拿去用的 欢迎测试)
CREATE PROCEDURE PRO_SELECT_SAME_VALUE_COUNT--ZYL查询相同记录2007-10-20
@tableNamevarchar(50),
@columnNamevarchar(50),
@valuevarchar(50),
@returnValueintoutput
AS
DECLARE@SQLNVARCHAR(4000)
DECLARE @TEMPSQLNVARCHAR(4000)
DECLARE@NAMEVARCHAR(100),@TEMPVALUEVARCHAR(100)
DECLARE @COUNTINT,@POS INT,@POS2 INT
SET @TEMPSQL='1=1 '
--SET @columnName='T1,T2,T3,'
--SET @VALUE='V1,V2,V3,'
SET @POS=CHARINDEX(',',@columnName)
SET @POS2=CHARINDEX(',',@value)
IF @POS>0
BEGIN
WHILE @POS>0 AND @POS2>0
BEGIN
SET @NAME=SUBSTRING(@columnName,1,@POS-1)
SET @columnName=SUBSTRING(@columnName,@POS+1,LEN(@columnName))
SET @POS=CHARINDEX(',',@columnName)

SET @TEMPVALUE=SUBSTRING(@value,1,@POS2-1)
SET @value=SUBSTRING(@value,@POS2+1,LEN(@value))
SET @POS2=CHARINDEX(',',@value)

IF LEN(@NAME)>0 AND LEN(@TEMPVALUE)>0
BEGIN
SET @TEMPSQL=@TEMPSQL+' AND ['+@NAME+']='''+@TEMPVALUE+''''
END
IF @POS=0 AND @POS2=0 AND LEN(@columnName)>0 AND LEN(@value)>0
BEGIN
SET @TEMPSQL=@TEMPSQL+' AND ['+@columnName+']='''+@value+''''
END
END
END
ELSE IF @POS=0 AND @POS2=0 AND LEN(@columnName)>0 AND LEN(@value)>0
BEGIN
SET @TEMPSQL=@TEMPSQL+' AND ['+@columnName+']='''+@value+''''
END
SET @TEMPSQL=@TEMPSQL+' AND DEL=0'
--PRINT ' END POS:'+CAST(@POS AS VARCHAR(100))
SET @SQL='SELECT @RET=COUNT(*) FROM '+@tableName+' WHERE '+@TEMPSQL+''
PRINT @SQL
EXECUTE SP_EXECUTESQL@SQL,N'@RET INT OUTPUT',@COUNTOUTPUT
SELECT @returnValue=@COUNT
PRINT @COUNT
GO

热点排行