给出表名可以在系统表中查出来
declare @tablename varchar(50)
set @tablename='table1'
SELECT syscolumns.name
FROM sysobjects , syscolumns
WHERE sysobjects.id = syscolumns.id
and(sysobjects.name = @tablename)
AND (syscolumns.colid = 1)
declare @tablename varchar(50)
set @tablename='table1'
SELECT syscolumns.name
FROM sysobjects , syscolumns
WHERE sysobjects.id = syscolumns.id
and(sysobjects.name = @tablename)
AND (syscolumns.colid = 1)
declare @Name varchar(50)
select @Name=Name
from syscolumns
where id=object_id('TableName')
and colid=1print @Name
declare @Name varchar(50)
select @Name=Name
from syscolumns
where id=object_id('TableName')
and colid=1print @Name
虽然得到的@Name是正确的,但下面语句是错的:
SELECT * FROM TableName WHERE @Name=SomeValue