查询以仅检索 Teradata 中的标识列
Query to retrive only Identity Columns in Teradata
在 Oracle 中 DBA_SEQUENCES 将从每个 table 中检索所有序列列。
能否告诉我如何在 Teradata 中找到相同的内容?
身份信息存储在dbc.idcol
中,上面没有数据字典视图,但是很容易写:
SELECT
d.DatabaseName
,t.tvmName AS TABLENAME
,c.FieldName
,id.AvailValue
,id.StartValue
,id.MINVALUE
,id.MAXVALUE
,id.INCREMENT
,id.cyc
FROM dbc.IdCol AS id
JOIN dbc.Dbase AS d
ON id.DatabaseId = d.DatabaseId
JOIN dbc.tvm AS t
ON id.TableId = t.tvmID
JOIN dbc.TVFields AS c
ON c.TableId = id.TableID
WHERE c.IdColType IS NOT NULL
;
在 Oracle 中 DBA_SEQUENCES 将从每个 table 中检索所有序列列。
能否告诉我如何在 Teradata 中找到相同的内容?
身份信息存储在dbc.idcol
中,上面没有数据字典视图,但是很容易写:
SELECT
d.DatabaseName
,t.tvmName AS TABLENAME
,c.FieldName
,id.AvailValue
,id.StartValue
,id.MINVALUE
,id.MAXVALUE
,id.INCREMENT
,id.cyc
FROM dbc.IdCol AS id
JOIN dbc.Dbase AS d
ON id.DatabaseId = d.DatabaseId
JOIN dbc.tvm AS t
ON id.TableId = t.tvmID
JOIN dbc.TVFields AS c
ON c.TableId = id.TableID
WHERE c.IdColType IS NOT NULL
;