对不同的数据库进行同一操作:
if exists(select name from sysobjects where name ='up_UpdateDatabase')
drop proc up_UpdateDatabase
go
create proc up_UpdateDatabase
@sql varchar(8000) --要执行的sql语句
As
DECLARE Table_Cursor CURSOR FOR
select name from sysdatabases where name like '%mis%'
declare @table varchar(50)
OPEN Table_Cursor
FETCH NEXT FROM Table_Cursor into @table
WHILE @@FETCH_STATUS = 0
BEGIN
Declare @s varchar(1000)
set @s = N'use '+@table +N' '+@sql
Exec (@s)
FETCH NEXT FROM Table_Cursor
END
CLOSE Table_Cursor
DEALLOCATE Table_Cursor
本文介绍了一个SQL Server存储过程,该过程能够通过执行单一SQL语句来更新所有名称中包含特定字符串(例如'%mis%')的数据库。这为跨多个数据库进行相同的操作提供了一种便捷的方法。
3064

被折叠的 条评论
为什么被折叠?



