Получение столбца и другой информации метаданных в Teradata


У меня есть полдюжины представлений в SQL Server, которые мне нужно реплицировать в Teradata, но я не смог найти td-эквивалент таблиц метаданных SQL. Я хотел бы воспроизвести следующую функциональность (которая, как я предполагаю, довольно самоописательна):

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 в интернете; все, с чем я сталкиваюсь, похоже, является рекламой, а не практической информацией.
1 8

1 ответ:

Все системные таблицы Teradata хранятся в схеме DBC.

Для столбцов это dbc.столбцы

select * from dbc.columns

Для представлений это dbc.таблицы с фильтром по столбцу что-то с именем table_type 'V' (где V обозначает представления)

select * from dbc.tables

Я не уверен в том, как получить все функции в Teradata. Кто бы это ни знал, пожалуйста, отредактируйте этот ответ.

В Teradata DBC.Таблицы содержат множество объектов, существующих в системе. (например, хранимые процедуры, 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