SQL Server通过储存过程实现批量删除注意事项

这里设定传过来的参数是拼接好的字符串,如:1,2,3,4,5 create procedure up_batchDeleteById ( @condition varchar(max) ) as delete from dt_name where id in(@condition) 以上的做法看似正确,实际会报错,具体原因是说id是int类型的,而@condition是字

 
这里设定传过来的参数是拼接好的字符串,如:1,2,3,4,5

create procedure up_batchDeleteById

(

    @condition varchar(max)

)

as

delete from dt_name where id in(@condition)

以上的做法看似正确,实际会报错,具体原因是说id是int类型的,而@condition是字符串类型,这样无法删除

正确做法:

create procedure up_batchDeleteById

(

    @condition varchar(max)

)

as

declare @sql varchar(max)

set @sql=’delete from dt_name where id in (‘ + @condition + ‘)’

exec(@sql)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
数据库

PostgreSQL的执行计划分析

2025-2-19 14:47:09

数据库

PostgreSQL数据库切割和组合字段函数

2025-2-19 14:47:23

0 条回复 A文章作者 M管理员
欢迎您,新朋友,感谢参与互动!
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
私信列表
搜索