批量刪除的儲存過程

2021-06-01 01:13:13 字數 549 閱讀 8488

批量刪除的儲存過程

根據批量刪除的sql語句可以知道「delete table where id in(id1,id2,id3,……)」

寫儲存過程

create proc up_del

@id nvarchar(20)

asdelete 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)

即拼接字串的形式即可解決了批量刪除的儲存過程

批量刪除儲存過程的儲存過程

create procedure dropprocedure as declare cur cursor read only for select name from sysobjects where xtype p and name like drop declare name varchar 4...

SQL SERVER 批量刪除儲存過程

sqlserver 2005一次只能刪除乙個儲存過程,如果多了,需要很長時間才能刪完,所以寫了一段語句,直接就把當然資料庫下所有使用者自定義的儲存過程給drop了。不過使用都請留心,當前開啟的資料庫哦。下面貼 declare proccur cursor forselect name from sy...

批量刪除記錄的儲存過程

if exists select from sysobjects where name users delete drop proc users delete gocreate proc users delete id varchar 100 asdeclare pointprve int 開始的位...