获取Oracle的列名、数据类型、大小和注释table
Get column name, data type, size and comments of Oracle table
如何获取table的列名、数据类型、大小和注释?
我试过了
SELECT all_tab.column_name, all_tab.data_type, all_tab.data_length, col_com.COMMENTS
FROM all_tab_columns all_tab
JOIN user_col_comments col_com ON all_tab.TABLE_NAME = col_com.TABLE_NAME
WHERE all_tab.TABLE_NAME='MY_TABLE'
但是没有用。
您需要添加列名连接:
SELECT all_tab.column_name,
all_tab.data_type,
all_tab.data_length,
(SELECT COMMENTS
FROM user_col_comments t
where t.TABLE_NAME = all_tab.TABLE_NAME
and t.COLUMN_NAME = all_tab.column_name)
FROM all_tab_columns all_tab
WHERE all_tab.TABLE_NAME = 'MY_TABLE'
USER_ 视图显示有关对象(在本例中为表)的信息,这些信息由您作为连接身份的模式用户拥有。 ALL_ 视图显示有关连接模式用户有权查看的对象的信息。
如果您只对架构所有者创建的对象感兴趣,那么一定要使用 USER_ 视图。
但是,您可能想要;
SELECT all_tab.owner,
all_tab.table_name,
all_tab.column_name,
all_tab.data_type,
all_tab.data_length,
col_com.comments
FROM all_tab_columns all_tab
JOIN all_col_comments col_com
ON all_tab.table_name = col_com.table_name
AND all_tab.owner = col_com.owner
WHERE all_tab.table_name = 'MY_TABLE'
这当然对我有用,但您可能还想考虑检索 DATA_PRECISION 和 DATA_SCALE
如何获取table的列名、数据类型、大小和注释?
我试过了
SELECT all_tab.column_name, all_tab.data_type, all_tab.data_length, col_com.COMMENTS
FROM all_tab_columns all_tab
JOIN user_col_comments col_com ON all_tab.TABLE_NAME = col_com.TABLE_NAME
WHERE all_tab.TABLE_NAME='MY_TABLE'
但是没有用。
您需要添加列名连接:
SELECT all_tab.column_name,
all_tab.data_type,
all_tab.data_length,
(SELECT COMMENTS
FROM user_col_comments t
where t.TABLE_NAME = all_tab.TABLE_NAME
and t.COLUMN_NAME = all_tab.column_name)
FROM all_tab_columns all_tab
WHERE all_tab.TABLE_NAME = 'MY_TABLE'
USER_ 视图显示有关对象(在本例中为表)的信息,这些信息由您作为连接身份的模式用户拥有。 ALL_ 视图显示有关连接模式用户有权查看的对象的信息。
如果您只对架构所有者创建的对象感兴趣,那么一定要使用 USER_ 视图。
但是,您可能想要;
SELECT all_tab.owner,
all_tab.table_name,
all_tab.column_name,
all_tab.data_type,
all_tab.data_length,
col_com.comments
FROM all_tab_columns all_tab
JOIN all_col_comments col_com
ON all_tab.table_name = col_com.table_name
AND all_tab.owner = col_com.owner
WHERE all_tab.table_name = 'MY_TABLE'
这当然对我有用,但您可能还想考虑检索 DATA_PRECISION 和 DATA_SCALE