Oracle 数据库表操作整理

    xiaoxiao2021-04-14  47

     

    1.获取某个用户创建的表名称

    select table_name from all_tables t where t.owner='用户名';

    例如:select table_name from all_tables t where t.owner='TEST';    --查找TEST用户创建的所有表名称,用户名区分大小写

    2.获取当前用户下的所有表名称和字段信息

    SELECT d.TABLE_NAME TABName,--表名 COALESCE(t.COMMENTS, ' ') TABDesc, --表注释 a.COLUMN_NAME columnName, --字段名 a.DATA_TYPE columnType, --字段类型 a.DATA_LENGTH COLUMNwidth, --字段长度 a.DATA_SCALE precision,--字段小数位 decode(a.NULLABLE,'Y','0','1') ISnotNull,--是否允许空 COALESCE(m.COMMENTS, ' ') COLUMNTYPEMARK, --字段备注 decode(k.uniqueness,'UNIQUE','1','0') ISuniques, --是否唯一 COALESCE(k.index_name, ' ') indexName,--如果是索引,索引名 decode(k.key,'Y','1','0') ISPRIMARYKey --是否主键 FROM user_tab_columns a INNER JOIN user_tables d on a.TABLE_NAME=d.TABLE_NAME LEFT JOIN user_tab_comments t ON t.TABLE_NAME=d.TABLE_NAME LEFT JOIN user_col_comments m ON m.COLUMN_NAME=a.COLUMN_NAME AND m.TABLE_NAME=d.TABLE_NAME LEFT JOIN ( SELECT e.index_name,u.TABLE_NAME,u.COLUMN_NAME,e.uniqueness,decode(p.constraint_name,NULL,'N','Y') key from user_indexes e INNER JOIN user_ind_columns u ON e.index_name=u.index_name LEFT JOIN ( select constraint_name from user_constraints where constraint_type='P' ) p ON e.index_name=p.constraint_name ) k ON k.TABLE_NAME=a.TABLE_NAME and k.COLUMN_NAME=a.COLUMN_NAME ORDER BY TABName

    user_开头是当前用户,all_开头所有用户,dba_开头包括系统表

    3.查看某张表下的所有列名、属性、注释

    select u.column_name,a.data_type,u.comments from user_col_comments u left join all_tab_cols a on a.column_name = u.column_name and a.table_name = u.table_name WHERE a.table_name = '表名' order by column_id;  --表名要大写

    例如:

    select u.column_name,a.data_type,u.comments from user_col_comments u left join all_tab_cols a on a.column_name = u.column_name and a.table_name = u.table_name WHERE a.table_name = 'TAB_TEST' order by column_id;

       

    4.查看表注释

    select * from user_tab_comments t where t.table_name='表名'; --表名要大写 5.查看某张表下的所有字段注释(没有数据类型)

    select * from user_col_comments t where t.table_name='表名'; --表名要大写

    转载请注明原文地址: https://ju.6miu.com/read-670734.html

    最新回复(0)