数据库迁移总结
查询对应表名的索引
SQL> select index_name,index_type from user_indexes where table_name='PUB_GLOBAL';
INDEX_NAME INDEX_TYPE
------------------------------ ---------------------------
PUBGLOBAL_PK NORMAL
查询指定索引的基本信息 包括 索引对应的列 表名
SQL> select table_name,column_name from user_ind_columns where index_name='PUBGLOBAL_PK';
TABLE_NAME COLUMN_NAME
------------------------------ ---------------------------------------
PUB_GLOBAL
-----------
查看序列:
SELECT SEQUENCE_NAME,MIN_VALUE,MAX_VALUE,INCREMENT_BY,LAST_NUMBER FROM USER_SEQUENCES;
查看触发器:
select table_owner,table_name,trigger_body from user_triggers where trigger_name="";
触发器、过程、函数和程序包
可以使用过程、程序包和触发器(存储在数据库中的PL/SQL 代码块)实施业务规则或执行复杂的处理。触发器在第34 章中介绍过。过程、函数和程序包在第35 章介绍过。下面几节将介绍怎样查询数据字典,以获取触发器、过程、程序包和函数的信息。
45.10.1 触发器:USER_TRIGGERS
USER_TRIGGERS 视图包含了用户账户所拥有的触发器的信息。该视图显示了触发器类型和触发器主体,此视图的各列如下面的清单所示:
TRIGGER_NAME TRIGGER_TYPE TRIGGERING_EVENT TABLE_OWNER BASE_OBJECT_TYPE TABLE_NAME COLUMN_NAME REFERENCING_NAMES WHEN_CLAUSE STATUS DESCRIPTION ACTION_TYPE TRIGGER_BODY CROSSEDITION ALL_TRIGGERS 视图列出了可以访问的所有表的触发器。DBA_TRIGGERS 视图列出了数据库中的所有触发器。
这两个视图都包含一个附加列Owner,它记录触发器的所有者。与触发器有关的另一个数据字典视图USER_TRIGGER_COLS 显示触发器怎样使用列。
它列出触发器所影响的每一列的名称,以及如何使用触发器。与USER_TRIGGERS 数据字典视图一样,该数据字典视图的“ALL”版本和“DBA”版本都可用。
在Oracle 11g 中,可以查询USER_TRIGGER_ORDERING 数据字典视图。USER_TRIGGER_ORDERING 数据字典视图的列包括触发器名、它引用的触发器以及排序类型(在引用的触发器之后或之前)。
------------------------
修改字段类型
ALTER TABLE chatter_users MODIFY COLUMN ip VARCHAR(50);