一尘不染

检索Teradata中的列和其他元数据信息

sql

我在SQL Server中有六个视图需要在Teradata中复制,但是我找不到与SQL元数据表等效的TD。我想复制以下功能(我认为这是不言而喻的):

select table_name, column_id ordinal_position, column_name,
   data_type, char_length char_max_length, 
   data_precision numeric_precision, data_scale numeric_scale
from user_tab_columns

select name as FUNCTION_NAME
from sys.objects
where type_desc='SQL_SCALAR_FUNCTION'

select TABLE_NAME as VIEW_NAME
from INFORMATION_SCHEMA.VIEWS

我也想知道在线上是否有可用的Teradata参考;我碰到的一切似乎都是广告,而不是实用的信息。


阅读 255

收藏
2021-03-10

共1个答案

一尘不染

所有Teradata系统表都存储在DBC模式下。

对于列,它是dbc.columns

select * from dbc.columns

对于视图,它是dbc.tables,在名为table_type’V’的列上带有过滤器(其中V代表视图)

select * from dbc.tables

我不确定如何在Teradata中获得所有功能。谁知道,请编辑此答案。

在Teradata中,DBC.Tables包含系统上存在的许多对象。(例如,存储过程,UDF,触发器,宏,视图,表,哈希索引,联接索引等。)“表种类”列用于标识对象的类型。

SELECT *
FROM DBC.TABLES
WHERE TABLEKIND = '<see below>'

A = Aggregate Function
B = Combined Aggregate Function and ordered analytical function
D = JAR
E = External Stored Procedure
F = Standard Function
G = Trigger
H = Instance or Constructor Method
I = Join Index
J = Journal
M = Macro
N = Hash Index
O = No Primary Index (Table)
P = Stored Procedure
Q = Queue Table
R = Table Function
S = Ordered Analytical Function
T = Table
U = User-defined data type
V = View
X = Authorization
Y = GLOP Set
2021-03-10