我在資料庫裏建了這樣一個存儲過程:
CREATE PROCEDURE 文件執行備註記錄
@WJBH Varchar(50),
@WJLB Varchar(50)
AS
SET NOCOUNT ON
IF @WJBH<>NULL AND @WJLB=Null
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 FROM 有效文件
WHERE 文件編號=@WJBHIF (@WJBH=Null) AND (@WJLB='所有類别')
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 FROM 有效文件
Order By 文件類別 IF( @WJBH=Null) And (@WJLB<>'所有類別') And (@WJLB<>Null)
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 From 有效文件
WHERE 文件類別=@WJLB ORDER BY 發文日期 DESC
GO
可是在查詢分析器裏執行存儲過程:
exec 文件執行備註記錄 Null,'所有類別'
可返回值不是數據集而是:
The command(s) completed successfully.
如裏這樣執行: 123,NULL
就能返回數據集.
這是怎麽回事啊?
是不是我的存儲過程有問題?
請幫幫忙!!!!!!!!
CREATE PROCEDURE 文件執行備註記錄
@WJBH Varchar(50),
@WJLB Varchar(50)
AS
SET NOCOUNT ON
IF @WJBH<>NULL AND @WJLB=Null
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 FROM 有效文件
WHERE 文件編號=@WJBHIF (@WJBH=Null) AND (@WJLB='所有類别')
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 FROM 有效文件
Order By 文件類別 IF( @WJBH=Null) And (@WJLB<>'所有類別') And (@WJLB<>Null)
SELECT 文件編號,文件名稱,發文部門,發文日期,執行備注 From 有效文件
WHERE 文件類別=@WJLB ORDER BY 發文日期 DESC
GO
可是在查詢分析器裏執行存儲過程:
exec 文件執行備註記錄 Null,'所有類別'
可返回值不是數據集而是:
The command(s) completed successfully.
如裏這樣執行: 123,NULL
就能返回數據集.
這是怎麽回事啊?
是不是我的存儲過程有問題?
請幫幫忙!!!!!!!!
解决方案 »
- delphi 更改系统时间格式
- 请问怎么知道smtp邮件发送时,邮件的大小.
- Delphi 7.0开发﹐请教一个问题,有兴趣者请进。。。
- 我用了TShellListView这个对象,当鼠标右击的时候,弹出的是windows的菜单,我想让他弹出自己的菜单!
- 请问怎么把tif格式的图片转换成jpg或bmp或gif任一种?
- 有关DWord类型,小弟不才啊
- 想学习fastreport设计报表,原一直用quickreport
- 我想将查询结果放在一个RichText里,可以控制RichText里的字符在某两个位置之间将某一个词变色吗?
- 怎樣在數據表中復制一條記錄﹖并將新復制的記錄修改后插入到原表中﹖
- 求完整的Delphi+Access源码。
- mdichild的窗体可否showmodule另外一个窗体?
- 为什么在DBGRIDEH控件中的统计结果不正确?详情请看
..
if @wjbh is not null
就是说: IF( @WJBH=Null) 这种格式的判断语句永远不会得到你所预期的true或者false
编出这种代码的结果是灾难性的;
应该用 if @WJBH is null 或者 if isnull(@WJBH,'') = ''
则可以用 if @WJBH is not null代替