SQL Server通过储存过程实现批量删除注意事项
程序员文章站
2022-04-09 22:30:26
...
这里设定传过来的参数是拼接好的字符串,如: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)
上一篇: MySQL管理之用户权限
推荐阅读
-
SQL Server中通过扩展存储过程实现数据库的远程备份与恢复
-
SQL Server中通过扩展存储过程实现数据库的远程备份与恢复
-
sql server通过临时存储过程实现使用参数添加文件组脚本复用
-
关于 MongoDB 与 SQL Server 通过本身自带工具实现数据快速迁移 及 注意事项 的探究
-
通过存储过程(SP)实现SQL Server链接服务器(LinkServer)的添加
-
SQL Server通过储存过程实现批量删除注意事项
-
SQL Server中通过扩展存储过程实现数据库的远程备份与恢复
-
sql server通过临时存储过程实现使用参数添加文件组脚本复用
-
关于 MongoDB 与 SQL Server 通过本身自带工具实现数据快速迁移 及 注意事项 的探究
-
通过存储过程(SP)实现SQL Server链接服务器(LinkServer)的添加