1
我試圖讓該表信息給一個表名,所以我寫了這樣的查詢:獲取表信息
SELECT so.name, sc.name, st.name, sc.length, CASE WHEN sc.status = 0x80 THEN 'Y' ELSE 'N' END AS IsIdent, ColOrder
FROM Asdim.dbo.sysobjects so
INNER JOIN Asdim.dbo.syscolumns sc
ON so.id= sc.id
INNER JOIN Asdim.dbo.systypes st
ON sc.xtype = st.xusertype
WHERE so.Name = 'Admin'
的問題是,我有名字「管理員」兩個表,但他們有不同的模式。所以當我運行這個查詢時:
SELECT * FROM Asdim.dbo.sysobjects WHERE name LIKE 'Admin'
我得到兩個記錄,因爲表名是相同的。有沒有一種方法可以根據模式名稱過濾掉?
看看http://stackoverflow.com/questions/917431/sql-server-return-schema-for-sysobjects。 – a1ex07