2011-10-28 109 views
2

的創建日期,我發現一個腳本來獲取列信息:獲取表的列

SELECT 
    crdate as thisFieldIsNotTheCreationOfTheField1 , 
    refdate as thisFieldIsNotTheCreationOfTheField2 , 
    o.name AS [TableName], 
    o.type, 
    c.name AS [ColName], 
    s.name AS [ColType], 
    c.prec, 
    c.scale, 
    c.isnullable 
FROM  
    dbo.sysobjects AS o 
INNER JOIN 
    dbo.syscolumns AS c ON c.id = o.id 
INNER JOIN 
    dbo.systypes AS s ON c.xtype = s.xtype 
WHERE 
    o.type = 'U' and o.name='TableNa' 
ORDER BY 
    crdate 

列創建日期時間是找不到的。

這怎麼辦?

+0

的[查找日期/時間創建一個表的列(可能的複製https://stackoverflow.com/questions/1425487/find-the-date- time-a-tables-column-was-created) – Vadzim

回答

2

這是你想要什麼:

SELECT obj.create_date 
from sys.objects obj 
inner join sys.columns col on obj.object_Id=col.object_Id 
WHERE col.name = @columnName 
and [email protected] 
+0

用於在'sys.'模式中使用** new **目錄視圖+1人:**溝**舊的'sysobjects'等等!是時候了! –

+4

這個obj.create_date不正確,爲什麼? – user1018697

+1

這obj.create_date不正確,爲什麼? 做一個簡單的試驗: '創建表測試 ( 甲INT空, 乙INT空, ÇINT空 );' 在sql server GUI上,修改您的表: 在A和B列之間插入一列X. 執行 'SELECT * 從sys.objects中OBJ 內部聯接SYS.COLUMNS山坳上obj.object_Id = col.object_Id WHERE obj.Name =' 測試 ' ORDER BY obj.create_date' 通常X柱必須是最後一個,他處於次要地位。 – user1018697