這篇文章給大家分享的是有關(guān)SQL中DDL操作的示例分析的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
化州網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),化州網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為化州上千提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的化州做網(wǎng)站的公司定做!
1、數(shù)據(jù)庫對象
表
視圖:存儲在數(shù)據(jù)字典中的一條 select 語句
序列
同義詞
索引
2、保留字
select * from v$reserved_words where reserved='Y';
3、創(chuàng)建表
前提:
有CREATE TABLE權(quán)限,有空間,一個表最多1000個列
臨時表級別 GLOBAL TEMPORARY:
事務(wù)級 ON COMMIT DELETE ROWS
會話級 ON COMMIT PRESERVE ROWS
語法
CREATE GLOBAL TEMPORARY TABLE ....
(...
)
ON COMMIT PRESERVE ROWS;
語法:
create table dept01
( deptno number(2),
dname varchar2(14)
);
default值:create table test (col1 number,col2 date default sysdate);
數(shù)據(jù)類型:字符、數(shù)字、日期、大對象等
數(shù)據(jù)字典
user_tables
user_objects:對象的名字、ID和類型
user_catalog:查看用戶擁有的表、視圖、同義詞、序列
使用CAST的方式創(chuàng)建新表
源表上列上的 not null(非空)約束也將應(yīng)用于新表,但 primary key(主鍵)、 unique(唯一)、 foreigne key(外鍵)約束 以及 隱式的 not null(主鍵列)約束都不會被繼承;
只創(chuàng)建表結(jié)構(gòu)的空表 create table test as select * from emp where 1=2;
4、修改表
add增加一列 alter table dept30 add (job varchar2(9));
modify更改一列 alter table dept30 modify (ename varchar2(15));
drop丟棄一列
alter table dept30 drop column job;
刪除有約束的列加cascade constraint alter table ... drop column ...cascade constraint
rename重命名列 alter table dept30 rename column empno to id;
set unused 標記不可用列
alter table xxx set unused (col1,col2);
與drop列配合使用,在業(yè)務(wù)高峰期先標記不可用,然后在業(yè)務(wù)低谷drop列 alter table xxx drop unused columns;
不能還原
select * from user_unused_col_tabs;
5、重命名表
rename dept30 to department30;
6、截斷表
truncate table department;
只刪除數(shù)據(jù),保留了表結(jié)構(gòu)
truncate與delete的區(qū)別:
a) delete 是 DML 語句,會產(chǎn)生很多 undo 數(shù)據(jù),用于回滾( rollback),速度慢。
delete 不會降低高水位線。 delete 可以刪除表中部分數(shù)據(jù)。
b) truncate 是 DDL 語句,幾乎不產(chǎn)生 undo 數(shù)據(jù),不能回滾。速度快。
truncate 會降低高水位線。 truncate 會刪除表中所有數(shù)據(jù)。
7、刪除表
drop table dept30;
無法回滾
drop table purge //刪除的表不會放到回收站
刪除有約束的表 drop table dept02 cascade constraint;
8、增加注釋
表級別 comment on table emp is 'Employee Information'; user_tab_comments 數(shù)據(jù)字典
列級別 comment on column emp.deptno is 'Department Number'; user_col_comments 數(shù)據(jù)字典
感謝各位的閱讀!關(guān)于“SQL中DDL操作的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!