剛寫的儲存過程,儲存一下,^_^
create procedure dbo.trans_gettablecolumnsinfo
@tablename varchar(50)
/*根據傳入的表名,獲取對應表的列的資訊,列名,列資料型別,資料型別長度,列是否是主鍵列
*/as
/*獲取該錶的主鍵列的列名,儲存在@colname中
*/declare @sql nvarchar(200)
declare @colname varchar(50)
set @sql=n'select @colname=name from syscolumns where exists(select id,indid from sysindexes wherename=''pk_'+@tablename+''' and syscolumns.id=sysindexes.id and syscolumns.colid=sysindexes.indid)'
exec sp_executesql @sql,n'@colname varchar(50) out',@colname out
/*獲取該錶的列資訊,列名,列資料型別,列資料型別長度,列是否是主鍵列
*/select syscolumns.name as colname,systypes.name as coltype,syscolumns.length as collength,case syscolumns.name when @colname then 1 else 0 end as ispkcolumn
from syscolumns join sysobjects on syscolumns.id=sysobjects.id join systypes on systypes.xtype=syscolumns.xtype
where sysobjects.name=@tablename
go---------------------------------------
簡單獲取主鍵列名,可以這樣:
sp_pkeys 'youtable'
就可以得到你想要的主鍵欄位的值
MySQL資料庫表名 列名 別名區分大小寫的問題
mysql資料庫表命名不能帶 可以帶下劃線 mysql在linux下資料庫名 表名 列名 別名大小寫規則是這樣的 1 資料庫名與表名是嚴格區分大小寫的 2 表的別名是嚴格區分大小寫的 3 列名與列的別名在所有的情況下均是忽略大小寫的 4 變數名也是嚴格區分大小寫的 mysql在windows下都不區...
MySQL資料庫表名 列名 別名區分大小寫的問題
mysql在linux下資料庫名 表名 列名 別名大小寫規則是這樣的 1 資料庫名與表名是嚴格區分大小寫的 2 表的別名是嚴格區分大小寫的 3 列名與列的別名在所有的情況下均是忽略大小寫的 4 變數名也是嚴格區分大小寫的 mysql在windows下都不區分大小寫。所以在不同作業系統中為了能使程式和...
MySQL資料庫表名 列名 別名區分大小寫的問題
mysql在linux下資料庫名 表名 列名 別名大小寫規則是這樣的 1 資料庫名與表名是嚴格區分大小寫的 2 表的別名是嚴格區分大小寫的 3 列名與列的別名在所有的情況下均是忽略大小寫的 4 變數名也是嚴格區分大小寫的 mysql在windows下都不區分大小寫。所以在不同作業系統中為了能使程式和...