发布于 2016-03-27 13:53:39 | 82 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

Oracle关系数据库管理系统

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。到目前仍在数据库市场上占有主要份额。


这篇文章主要介绍了oracle获取当前用户表、字段等详细信息SQL,需要的朋友可以参考下

做个笔记,仅供参考


SELECT 
d.TABLE_NAME tbName,//表名
COALESCE(t.COMMENTS, ' ') tbDesc, //表注释
a.COLUMN_NAME columnName, //字段名
a.DATA_TYPE columnType, //字段类型
a.DATA_LENGTH width, //字段长度
a.DATA_SCALE precision,//字段小数位

decode(a.NULLABLE,'Y','0','1') notNull,//是否允许空
COALESCE(m.COMMENTS, ' ') comments, //字段备注
decode(k.uniqueness,'UNIQUE','1','0') uniques, //是否唯一
COALESCE(k.index_name, ' ') indexName,//如果是索引,索引名
decode(k.key,'Y','1','0') masterKey//是否主键
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 tbName

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



相关阅读 :
oracle获取当前用户表、字段等详细信息SQL
Oracle删除表、字段之前判断表、字段是否存在
oracle 使用sql获取数据库表、表的字段的多种方法
Oracle删除当前用户下所有表的方法适用于有或没有删除权限
oracle删除表字段和oracle表增加字段
解析如何查看Oracle数据库中某张表的字段个数
在oracle 数据库查询的select 查询字段中关联其他表的方法
Oracle数据库表中字段顺序的修改方法
oracle 实际值超过数据库某个字段指定长度报错解决
oracle数据库中如何处理clob字段方法介绍
oracle获取当前时间,精确到毫秒并指定精确位数的实现方法
Oracle 查询表信息获取表字段及字段注释
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务