根據批量刪除的sql語句可以知道“delete table where id in(id1,id2,id3,……)”
寫存儲過程
create proc up_del
@ID nvarchar(20)
as
delete table where id in(@ID)
此時執行會報“消息 245,級別 16,狀態 1,第 1 行 在將 varchar 值 '1,0' 轉換成數據類型 int 時失敗。”的錯誤
所以解決辦法是:
create PROCEDURE [dbo].[UP_tb_Delete] @ID nvarchar(50)
AS declare @Sql nvarchar(200)
set @Sql='DELETE tb_zazhi WHERE ID in ('+@ID+')' exec(@Sql)
即拼接字符串的形式即可解決了批量刪除的存儲過程