--修改表名稱EXEC sp_rename 舊錶名,新表名--修改表欄位名稱EXEC sp_rename '表.舊欄位','新欄位','COLUMN'--修改表欄位類型alter table 表 alter column 欄位 類型(如:int)--查詢當前資料庫名select name from [master].[dbo].[sysdatabases] Where DbId=(Select Dbid From [Master].[dbo].[SysProcesses] Where Spid = @@spid)--查詢表的欄位select * from Sys.syscolumns where id=object_id('表')--查詢是否存在使用者表if exists(select * from sys.sysobjects where id=object_id('表名') and objectproperty(id,N'IsUserTable')=1)print 'exists'
SQL語句之普通行列轉換
假設有張學產生績表(tb_rowtocol)如下
Name Subject Result
張三 語文 73
張三 數學 83
張三 物理 93
李四 語文 74
李四 數學 84
李四 物理 94
想變成
姓名 語文 數學 物理
張三 73 83 93
李四 74 84 94
declare @sql varchar(4000)
set @sql = 'select Name as ' + '姓名'
select @sql = @sql + ' , sum(case Subject when '''+Subject+''' then Result end) ['+Subject+']'
from (select distinct Subject from rowtocol) as a
set @sql = @sql + ' from rowtocol group by name'
exec(@sql)
如果上述兩表互相換一下:即
表名(cj)
姓名 語文 數學 物理
張三 73 83 93
李四 74 84 94