我在2005试可以:CREATE TABLE TA(ID INT,CLOUNM1 VARCHAR(2),COLUMN2 VARCHAR(2)) INSERT TA SELECT 1, 'aa', 'qq' UNION ALL SELECT 2, 'bb', 'ww'CREATE TABLE TB(FieldName VARCHAR(10),chimeseName NVARCHAR(10)) INSERT TB SELECT 'CLOUNM1', N'字段一' UNION ALL SELECT 'COLUMN2', N'字段二'DECLARE @SQL VARCHAR(8000) SET @SQL='' SELECT @SQL=@SQL+','+name+' AS '''+chimeseName+'''' FROM SYSCOLUMNS JOIN TB ON FieldName=name WHERE ID=OBJECT_ID('TA')SET @SQL='SELECT ID AS ID'+@SQL+' FROM TA' --PRINT @SQL EXEC(@SQL)DROP TABLE TA DROP TABLE TB /* ID 字段一 字段二 ----------- ---- ---- 1 aa qq 2 bb ww */
INSERT TA
SELECT 1, 'aa', 'qq' UNION ALL
SELECT 2, 'bb', 'ww'CREATE TABLE TB(FieldName VARCHAR(10),chimeseName NVARCHAR(10))
INSERT TB
SELECT 'CLOUNM1', N'字段一' UNION ALL
SELECT 'COLUMN2', N'字段二'DECLARE @SQL VARCHAR(8000)
SET @SQL=''
SELECT @SQL=@SQL+','+name+' AS '''+chimeseName+''''
FROM SYSCOLUMNS JOIN TB ON FieldName=name WHERE ID=OBJECT_ID('TA')SET @SQL='SELECT ID AS ID'+@SQL+' FROM TA'
--PRINT @SQL
EXEC(@SQL)DROP TABLE TA
DROP TABLE TB
/*
ID 字段一 字段二
----------- ---- ----
1 aa qq
2 bb ww
*/
dbo.syscolumns错误
select * from SYSCOLUMNS