2017-10-06 66 views
0

如何獲得具有DataType'DateTime'主鍵的表的列表?SQL:主鍵爲DateTime的表的列表

我找不到任何正確的方法來做到這一點。

+0

你有沒有發現任何不正當的方法呢?你找到一種方法來獲得所有主鍵的表的列表? –

+0

就像我發現這一個複合鍵https://stackoverflow.com/questions/23259915/how-to-get-a-list-of-tables-with-composite-primary-key-in-sql-server –

回答

1

基礎上this查詢,我已經更新查詢,以滿足您的要求:

select 
    t.name as TableName, 
    tc.name as ColumnName 
    from 
    sys.schemas s 
    inner join sys.tables t on s.schema_id=t.schema_id 
    inner join sys.indexes i on t.object_id=i.object_id 
    inner join sys.index_columns ic on i.object_id=ic.object_id 
            and i.index_id=ic.index_id 
    inner join sys.columns tc on ic.object_id=tc.object_id 
          and ic.column_id=tc.column_id 
    inner join sys.types ty on tc.system_type_id = ty.system_type_id 
where i.is_primary_key=1 and ty.name = 'datetime'