在oracle中什么算ddl语句

对于create我们知道这是一个ddl语句,另外还有一些操作,其实对于数据库来说也是ddl操作。当发生ddl操作时,有关对象的sql语句都会出现重新解析的情况,所以在生产环境下要注意此类操作。

1.在表上创建对象、在线重建索引

SQL> create table dayu0718 as select * from dba_objects;

Table created.

SQL> commit;

Commit complete.

SQL> alter session set nls_date_format='yyyymmdd hh24:mi';

Session altered.


SQL> select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 13:37


SQL> create index dayu0718_ind on dayu0718(object_id);

Index created.

SQL> select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 13:39


SQL> alter index dayu0718_ind rebuild online;

Index altered.

SQL>  select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 13:41

2.添加、删除列

SQL> alter table DAYU0718 add column_new varchar(30);

Table altered.

SQL> select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 13:50


SQL> alter table DAYU0718 drop column column_new;

Table altered.

SQL>  select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 13:51

3.增加、调整约束

SQL> alter table dayu0718 add constraint pk_object_id primary key(object_id);

Table altered.

SQL>  select last_ddl_time from dba_objects where object_name='DAYU0718';

LAST_DDL_TIME
--------------
20180718 14:06

4.若表为分区表,truncate分区表

 

posted @ 2018-07-18 13:33  dayu.liu  阅读(2172)  评论(0编辑  收藏  举报