select 'alter table ' + name +' add colname varchar(20)' from sysobjects where xtype ='U'
其中colname是你要加的列名,将上面的语句在你的数据库里面执行一下,此时生成一批SQL语句,将所有的语句拷贝出来再在你的数据库里面执行就ok
问题解决,接分了.
其中colname是你要加的列名,将上面的语句在你的数据库里面执行一下,此时生成一批SQL语句,将所有的语句拷贝出来再在你的数据库里面执行就ok
问题解决,接分了.
declare @SQL VARCHAR (8000)
SET @sql=''
select @sql=@sql +' '+ 'alter table ' +name+' add colname varchar(20)' from sysobjects where xtype ='U'
exec(@sql)
刚才试了一下,你的方法很有效,而且也更方便。但是这个sp_msforeachtable在帮助中找不到,不知道你是怎么知道的,他有那些用法?
例外不知道可不可以使用通配符。
例如我要在所有以sale_开头的表中删除名为health的字段,该怎么办呢?
我已经就该问题开了一个新帖(30分),请你看看:
to(邹建):关于"怎样遍历一个数据库中的所有表"的再讨论
物件類型。可以是這些物件類型之一:
C = CHECK 條件約束
D = DEFAULT 條件約束
F = FOREIGN KEY 條件約束
L = 記錄檔
FN = 存量函數IF = 內嵌資料表函數P = 預存程序
PK = PRIMARY KEY 條件約束 (類型為 K)
RF = 複寫篩選條件預存程序
S = 系統資料表
TF = 資料表函數TR = 觸發程序
U = 使用者資料表
UQ = UNIQUE 條件約束 (類型為 K)
V = 檢視表
X = 延伸預存程式