存储过程参数问题

y_sequoia 2006-03-08 03:46:53
我用存储过程更新数据库,传递参数时,如果参数为空,执行失败,而这些字段是可以为空的,
并且在存储过程中参数给了默认值,也执行不对,我是在VC中用ADO执行。请问如何解决?谢谢!
...全文
59 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
lzhs 2006-03-08
1、执行不对是VC程序报错,还是存储过程执行错误?
2、你用在VC中给定的同样的参数,在查询分析器中执行一下,看结果是正确的吗?
回复
ycy589 2006-03-08
来学习
回复
-狙击手- 2006-03-08
create proc tests
@d datetime
as
begin
if isnull(@d,'')=''
select 1
else
select 2
end
go

exec tests '2001-01-01'
/*
-----------
2
*/
exec tests null
/*

-----------
1
*/
drop proc tests
回复
-狙击手- 2006-03-08
实际是你的VC的空在给过程传参过程发生类型转换错吧
在SQL中NULL通过SET或SELECT传给变量
回复
xeqtr1982 2006-03-08
同意可可:)
回复
lsqkeke 2006-03-08
存储过程的参数,你默认个空值给变量
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2006-03-08 03:46
社区公告
暂无公告