首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

如何样动态传参数到存储过程

2013-02-19 
怎么样动态传参数到存储过程?比如有个存储过程, 类似如下的更新语句create procedure PPP @XX varchar(32)

怎么样动态传参数到存储过程?
比如有个存储过程, 类似如下的更新语句
create procedure PPP 
@XX varchar(32),
@XXX varchar(32),
……
as
update TA set
XX=XX
XXX=XXX
……
……
where ……

里面的字段(XX和XXX)我想在程序里动态传入。有时候只有XX,有时候只有XXX,有时候两个都有……
该怎么弄?
[解决办法]
1、存储过程参数增加默认值
create procedure PPP 
@XX varchar(32) = null,
@XXX varchar(32) = null,
……
as

2、存储过程中队默认何不默认要有特殊处理(代码就略了)
3、程序调用采取以下方式 
exec ppp @xx = ...,@xxx = ...
exec ppp @xx = ...
exec ppp @xxx = ...
exec ppp 
[解决办法]

引用:
比如有个存储过程, 类似如下的更新语句
create procedure PPP 
@XX varchar(32),
@XXX varchar(32),
……
as
update TA set
XX=XX
XXX=XXX
……
……
where ……

里面的字段(XX和XXX)我想在程序里动态传入。有时候只有XX,有时候只有XXX,有时候两个都有……
该怎么弄? 
……


可以这样:
传参的时候每个参数都传,用不到的就传个空值,然后在过程里用if语句判断处理就可以了


[解决办法]
引用:
引用:比如有个存储过程, 类似如下的更新语句
create procedure PPP 
@XX varchar(32),
@XXX varchar(32),
……
as
update TA set
XX=XX
XXX=XXX
……
……
where ……

里面的字段(XX和XXX)我想在程序里动态传入。有时候只有XX……


我也是这么认为的:传参的时候每个参数都传,用不到的就传个空值,然后在过程里用if语句判断处理就可以了

热点排行