数据库迁移总结
查询对应表名的索引
SQL>selectindex_name,index_typefromuser_indexeswheretable_name='PUB_GLOBAL';
INDEX_NAMEINDEX_TYPE
---------------------------------------------------------
PUBGLOBAL_PKNORMAL
查询指定索引的基本信息包括索引对应的列表名
SQL>selecttable_name,column_namefromuser_ind_columnswhereindex_name='PUBGLOBAL_PK';
TABLE_NAMECOLUMN_NAME
---------------------------------------------------------------------
PUB_GLOBAL
-----------
查看序列:
SELECTSEQUENCE_NAME,MIN_VALUE,MAX_VALUE,INCREMENT_BY,LAST_NUMBERFROMUSER_SEQUENCES;
查看触发器:
selecttable_owner,table_name,trigger_bodyfromuser_triggerswheretrigger_name="";
触发器、过程、函数和程序包
可以使用过程、程序包和触发器(存储在数据库中的PL/SQL代码块)实施业务规则或执行复杂的处理。触发器在第34章中介绍过。过程、函数和程序包在第35章介绍过。下面几节将介绍怎样查询数据字典,以获取触发器、过程、程序包和函数的信息。
45.10.1触发器:USER_TRIGGERS
USER_TRIGGERS视图包含了用户账户所拥有的触发器的信息。该视图显示了触发器类型和触发器主体,此视图的各列如下面的清单所示:
TRIGGER_NAMETRIGGER_TYPETRIGGERING_EVENTTABLE_OWNERBASE_OBJECT_TYPETABLE_NAMECOLUMN_NAMEREFERENCING_NAMESWHEN_CLAUSESTATUSDESCRIPTIONACTION_TYPETRIGGER_BODYCROSSEDITIONALL_TRIGGERS视图列出了可以访问的所有表的触发器。DBA_TRIGGERS视图列出了数据库中的所有触发器。
这两个视图都包含一个附加列Owner,它记录触发器的所有者。与触发器有关的另一个数据字典视图USER_TRIGGER_COLS显示触发器怎样使用列。
它列出触发器所影响的每一列的名称,以及如何使用触发器。与USER_TRIGGERS数据字典视图一样,该数据字典视图的“ALL”版本和“DBA”版本都可用。
在Oracle11g中,可以查询USER_TRIGGER_ORDERING数据字典视图。USER_TRIGGER_ORDERING数据字典视图的列包括触发器名、它引用的触发器以及排序类型(在引用的触发器之后或之前)。
------------------------------------------------------------
修改字段类型
ALTERTABLEchatter_usersMODIFYCOLUMNipVARCHAR(50);