9

我在 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 参考资料;我遇到的一切似乎都是广告而不是实用信息。

4

1 回答 1

17

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

对于列,它是 dbc.columns

select * from dbc.columns

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

select * from dbc.tables

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

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

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
于 2011-10-21T17:45:32.317 回答