脚本:查看约束信息
2016-03-24 20:09
323 查看
说明:首先要使用sys用户建立一个讲long转成字符串的函数 之后用sys用户调用脚本 该函数来源于 http://blog.163.com/yanenshun@126/blog/static/128388169201311318581758/ CREATE OR REPLACE FUNCTION sys.LONG_TO_CHAR(in_rowid rowid, in_owner varchar, in_table_name varchar, in_column varchar2) RETURN varchar AS text_c1 varchar2(32767); sql_cur varchar2(2000); begin DBMS_OUTPUT.ENABLE(buffer_size => null); sql_cur := 'select ' || in_column || ' from ' || in_owner || '.' || in_table_name || ' where rowid = ' || chr(39) || in_rowid || chr(39); dbms_Output.put_line(sql_Cur) ; -- execute immediate sql_cu into text_c1; text_c1 := substr(text_c1, 1, 4000); RETURN TEXT_C1; END; SELECT OWNER,TABLE_NAME,constraint_name,constraint_type,TO_CHAR(wm_concat(column_name)) FROM (SELECT T1.OWNER, T1.table_name, T2.constraint_name, CASE WHEN T1.constraint_type = 'P' then 'PRIMARY KEY' WHEN T1.constraint_type = 'R' then 'FOREIGN KEY' WHEN T1.constraint_type = 'U' then 'UNIQUE KEY' WHEN T1.constraint_type = 'C' then 'CHECK' END constraint_type, T2.column_name FROM DBA_CONSTRAINTS T1 ,DBA_CONS_COLUMNS T2 WHERE T1.owner=T2.owner AND T1.table_name = T2.table_name AND T1.constraint_name=T2.constraint_name AND T1.constraint_type !='C' AND T1.owner='BOSENRUI' ORDER BY T1.OWNER, T1.table_name, T2.constraint_name, constraint_type, t2.position) GROUP BY OWNER,TABLE_NAME,constraint_name,constraint_type UNION ALL SELECT US.NAME OWNER , CEO.NAME TABLE_NAME, CON.NAME constraint_name, 'CHECK', LONG_TO_CHAR(CDEF.ROWID,'SYS','CDEF$','CONDITION') check_condition FROM SYS.CON$ CON , SYS.USER$ US, SYS.CDEF$ CDEF , sys."_CURRENT_EDITION_OBJ" CEO WHERE CON.OWNER#=US.USER# AND CON.CON# = CDEF.CON# AND CEO.obj# = CDEF.obj# AND CDEF.TYPE# IN (1,7) and US.NAME='BOSENRUI'
相关文章推荐
- Undefined symbols for architecture arm64:
- 常见的几种数组排序算法JS实现
- Xcode升级更新后,恢复cocoapods以及插件的方法
- 加密解密
- 20145303刘俊谦 Java 代码托管
- 互联网如何“武装”农民?
- 软考信息系统监理师2016年3月18日作业
- [BZOJ3143][HNOI2013]游走
- java基础入门-arraylist存储开销
- ORA-12545: 因目标主机或对象不存在,连接失败
- Activity与Fragment的生命周期
- BZOJ4454: C Language Practice
- vijos P1213 80人环游世界(有源汇的上下界费用流)
- 【JAVA开发之IO流1-2】IO流中的字符流和字节流
- JAVA多线程之基础部分
- VMware虚拟机无法识别U盘解决方案
- 探讨理想团队模式
- systemctl介绍
- Java 设计模式-单例模式
- PKU离散数学