--新项目不知道哪个缺心眼建的同构库,只是见了表结构,并没有健非主键外的索引,领导让追加一版,以前只是会用视图拼sql创建, --今天有学会一招oracle-9i以上版本可以使用 --导出的内容有点复杂需要用编辑器处理下并且替换一下实例名(schema) SELECT substr(replace(to_char(DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name)),'"',''),0,instr(replace(to_char(DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name)),'"',''),') ',1))||';' createindexsql FROM USER_OBJECTS u where U.OBJECT_TYPE = 'INDEX'; --这个可能用报错,可能有那种表和索引所属的实例不是一个用户,所以owner一定要写的完善一些 SELECT replace(TO_CHAR(dbms_lob.substr(dbms_metadata.get_ddl('INDEX',INDEX_NAME)) || ';'),'"','') from dba_indexes a WHERE a.TABLE_TYPE = 'TABLE' and a.OWNER = 'GISDATA' and NOT EXISTS (SELECT 'x' FROM dba_constraints b WHERE a.OWNER = b.OWNER and a.INDEX_NAME = b.CONSTRAINT_NAME and b.CONSTRAINT_TYPE = 'P');--不包括主键
批量导出索引的创建语句
猜你喜欢
转载自www.cnblogs.com/heyt/p/11582056.html
今日推荐
周排行