創建和管理表--2

 

六、總計

1、  查詢其他用戶的表

a)         其他用戶的表不屬於本用戶的空間

b)         如果要查詢其他用戶下的表,要使其他用戶的用戶名作爲前綴。

                         i.              Select * from userB.employees;

                       ii.              Select * from userA.employees;

2、  Default值或者是僞列都是非法的

a)         執行insert操作時,可以爲其指定默認值

b)         值、表達式和sql語句都可以作爲默認值

c)         其他的列名

d)         默認值的類型必須和該列的類型一致

CREATE TABLE hire_dates (hire_date DATE DEFAULT SYSDATE);

3、  創建表

a)         語法

CREATE TABLE dept(deptno NUMBER(2),

dname  VARCHAR2(14),

loc     VARCHAR2(13));

b)         確認

DESCRIBE DEPT

4、  數據類型

 

5、  使用子查詢創建表

a)         使用As subquery 選項,創建表和插入數據結合起來

1.         CREATE TABLE table [(column ,clumn …)]

As subquery;

b)         指定的列和子查詢中的列要一一對應

c)         通過列名的默認值定義列

例:CREATE TABLE         dept80

  AS
    SELECT  employee_id, last_name,

            salary*12 ANNSAL,

            hire_date
    FROM    employees
    WHERE   department_id = 80;

Table created.         

6、  ALTER TABLE語句

a)         追加新的列

ALTER TABLE  talbe       ADD(column datatype [DEFAULT expr] [,column datatype]…);

b)         修改現有的列

ALTER TABLE  talbe    MODIFY(column datatype [DEFAULT expr] [,column datatype]…);

c)         爲新追加新的列定義默認值

ALTER TABLE  talbe       DROP(column datatype [DEFAULT expr] [,column datatype]…);

d)         刪除一個列

ALTER TABLE table_name rename column old_column_name to new_column_name

7、  刪除表

a)         數據和結構都被刪除

b)         所有正在運行的相關事務被提交

c)         所有相關索引被刪除

d)         DROP TABLE 語句不能回滾

8、  改變對象的名稱

a)         執行RENAME語句改變表,視圖,序列,或同義詞的名稱

RENAME dept TO detail_dept Table renamed

b)         必須是對象的擁有者

9、  清空表

a)         TRUNCATE TABLE 語句

                         i.              刪除表中所有的數據

                       ii.              釋放表的存儲空間

TRUNCATE TABLE detail_dept;

Table truncated。

b)         TRUNCATE語句不能回滾

c)         可以使用DELETE語句刪除數據

10、              約束

a)         約束是表一級的限制

b)         如果存在依賴關係,約束可以防止錯誤的刪除數據

c)         約束的類型

                         i.              NOT NULL

                       ii.              UNIQUE

                      iii.              PRIMARY KEY

                      iv.              FOREIGN KEY

1.         FOREIGN KEY: 在子表中,定義了一個表級的約束

2.         REFERENCES: 指定表和父表中的列

3.         ON DELETE CASCADE: 當刪除父表時,級聯刪除子表記錄

4.         ON DELETE SET NULL: 將子表的相關依賴記錄的外鍵值置爲null

4.

                       v.              CHECH

1.         引用CURRVAL, NEXTVAL, LEVEL, 和ROWNUM

2.         調用SYSDATE, UID, USER, 和USERENV 函數

3.         另一個表的查詢記錄

11、              約束規則

a)         用戶可以自定義約束,也可以使用Oracle Server的sys_cn格式命名約束

b)         約束創建的時機:

                         i.              創建表的時候,同時創建約束

                       ii.              表結構創建完成後

C) 約束可以定義在列一級,或者是表一級

D)通過數據字典看約束

 

 

發佈了168 篇原創文章 · 獲贊 34 · 訪問量 31萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章