程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle學習筆記8--創建和管理表

Oracle學習筆記8--創建和管理表

編輯:Oracle教程

前6次筆記,都是表的查詢操作,查詢作為數據庫的一個基本操作,我們花了不少的時間。那麼本次筆記我們學習,對表的創建和管理,創建表、刪除表、修改表、重命名表和清空表。

常見的數據庫對象: 表,視圖,序列,索引,同義詞

之前查詢所使用的表emp 、dept 都是Oracle自帶的數據庫。本次就使用SQL語句來創建我們自己的表。

創建表之前,先了解一下數據庫的幾種數據類型和表的命名規則。

數據類型:

varchar2 表示的是一個字符串。

number number(n) :表示的是一個整數,數字的長度是n 。

number(n,2)表示的是一個小數,小數點後可以保留兩位小數。

date 表示日期的類型,按照標准的日期格式進行存放。

clob 字符數據,最大可達到4G。

blob 表示二進制數據,最大可以存放4G,例如,存放電影,圖片。

表名和列名的命名規則:

必須以字母開頭;

必須在1-30個字符之間;

必須只能包括含有A-Z ,a-z, 0-9,_,$和#;

不能和用戶定義的其他對象重名;

必須不能是Oracle的保留字;

建表的語法:

CREATE TABLE table_name(

列名稱1 數據類型 [DEFAULT 默認值] ,

列名稱2 數據類型[DEFAULT 默認值] ,

列名稱3 數據類型[DEFAULT 默認值] ,

...

)

例:創建emp1表

SQL> create table emp1(
2 id number(10),
3 name varchar2(20),
4 salary number(12 ,2 ),
5 hiredate date
6 );

Table created

表emp1創建成功。

除了上面的這這種建表的方式,還有第二種方法,該方法依托於已經存在的表。

基本語法:

CREATE TABLE table_nameAS(子查詢) ;

在子查詢中,如果寫的是select * from emp ,或者是 select enamel , sal , hiredate , (具體的列名) from emp ;除了將emp表中列的結構復制過來,連表中的數據也一起復制過來。如果我們只是想復制一個表的結構,而不復制表的內容,則要添加where 條件,即:select * from emp where 1 = 2 ; 此時,只復制表的結構,不會復制表的內容。

修改表 (ALTER TABLE)

使用alter table 語句可以完成:追加新的列,修改現有的列,為新追加的列定義默認值,刪除列,重命名表的

列名等操作。

追加新的列

基本語法:

ALTER TABLE table_name

add ( 列名 數據類型 默認值) ;

例:為表emp1 ,添加email ,20個字符 ,並設置默認值--無地址

SQL> alter table emp1
2 add(email varchar2(20)) ;

Table altered

SQL> desc emp1 ;

Name Type Nullable Default Comments
-------- ------------ -------- ------- --------
ENAME VARCHAR2(10) Y
SAL NUMBER(7,2) Y
HIREDATE DATE Y
EMAIL VARCHAR2(20) Y

修改現有的列

基本語法:

ALTER TABLE emp1

MODIFY (列名 ,數據類型 ) ;

例:將表emp1 中列salary 的數據類型長度改為50

ALTER TABLE emp1

MODIFY (salary number(50) ) ;

刪除列

基本語法

ALTER TABLE emp1

DROP cloumn 列名 ;

例:刪除上次添加的email列

ALTER TABLE emp1

DROP cloumn email ;

重命名列

基本語法:

ALTER TABLE table_name

RENAME column old_column_name TO new_column_name ;

例:將emp1表中的列salary重命名為sal

ALTER TABLE emp1

RENAME cloumn salary TO sal ;

在一般的開發中,很少會對表的結構進行修改操作,因為在開發的初期,已經對數據庫中表的結構進行了充分的設計。

表的刪除

基本語法:

DROP TABLE table_name ;

例:刪除emp1 表 --- DROP TABLE emp1 ;

表的重命名:

基本語法:

RENAME old_table_name TO new_table_name ;

清除表

基本語法:

TRUNCATE TABLE table_name ;

如果想保留表的結構,但是清除表中的記錄,可以使用上面的語句,該操作不可恢復。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved