創(chuàng)建一個(gè)存儲(chǔ)過(guò)程,通過(guò)傳入的表名參數(shù),返回該表的主鍵。其存儲(chǔ)過(guò)程代碼如下:
CREATE Proc pGetPkColumn
(@tableName varchar(50))
as
/*
Create By Peopleyl
獲得所要導(dǎo)入數(shù)據(jù)表的自動(dòng)遞增列
*/
declare @columnName varchar(500)
set @columnName = ’’
SELECT @columnName = @columnName +’,’+ c.Name
FROM
sysindexes i,
sysindexkeys k,
sysobjects o,
syscolumns c,
systypes d
WHERE
i.Name like ’pk_%’
AND o.id=i.id
AND o.xType=’U’
AND i.id = k.id
AND i.indid = k.indid
AND i.id = o.id
AND i.id = c.id
AND k.colid = c.colid
and i.indid > 0
and i.indid < 255
and (i.status & 64)=0
and c.xtype = d.xtype
and o.name = @tableName
if charindex(’,’,@columnName) = 1
select Stuff(@columnName,1,1,’’)
else
select @columnName
CREATE Proc pGetPkColumn
(@tableName varchar(50))
as
/*
Create By Peopleyl
獲得所要導(dǎo)入數(shù)據(jù)表的自動(dòng)遞增列
*/
declare @columnName varchar(500)
set @columnName = ’’
SELECT @columnName = @columnName +’,’+ c.Name
FROM
sysindexes i,
sysindexkeys k,
sysobjects o,
syscolumns c,
systypes d
WHERE
i.Name like ’pk_%’
AND o.id=i.id
AND o.xType=’U’
AND i.id = k.id
AND i.indid = k.indid
AND i.id = o.id
AND i.id = c.id
AND k.colid = c.colid
and i.indid > 0
and i.indid < 255
and (i.status & 64)=0
and c.xtype = d.xtype
and o.name = @tableName
if charindex(’,’,@columnName) = 1
select Stuff(@columnName,1,1,’’)
else
select @columnName