- -- 建立資料表
- CREATE TABLE table_name(
- column1 NUMBER,
- column2 CHAR,
- column3 VARCHAR2,
- column4 DATE,
- -- 主鍵(PRIMARY KEY)
- CONSTRAINT pk_table_name PRIMARY KEY(column1,column2),
- -- 唯一鍵(UNIQUE KEY)
- CONSTRAINT unique_table_name UNIQUE(column1,column2),
- -- 外來鍵(FOREIGN KEY)
- CONSTRAINT fk_table_name_column1
- FOREIGN KEY(column1, column2)
- REFERENCES parent_table(column1, column2)
- [ON DELETE [CASCADE|SET NULL]]
- -- 當參考鍵刪除時,相對應做的處理:
- -- 預設 UPDATE No Action & DELETE No Action
- -- ON DELETE CASCADE: 刪除參考鍵時連同刪除
- -- ON DELETE SET NULL: 刪除參考鍵時將外鍵設為 NULL
- );
- -- 為資料表標示註釋
- COMMENT ON TABLE table_name IS '資料表註釋';
- -- 為資料欄位標示註釋
- COMMENT ON COLUMN table_name.column1 IS '資料欄位註釋';
- -- 附加主鍵(PRIMARY KEY)
- ALTER TABLE table_name
- ADD CONSTRAINT pk_table_name PRIMARY KEY(column1,column2);
- -- 附加唯一鍵(UNIQUE KEY)
- ALTER TABLE table_name
- ADD CONSTRAINT unique_table_name UNIQUE(column1,column2);
- -- 附加外來鍵(FOREIGN KEY)
- ALTER TABLE table_name
- ADD CONSTRAINT fk_table_name_column1
- FOREIGN KEY(column1, column2)
- REFERENCES parent_table(column1, column2)
- [ON DELETE [CASCADE|SET NULL]];
- -- 建立索引(Index)
- CREATE [UNIQUE] INDEX idx_table_name ON table_name(column1, column2);
最近剛剛接觸 Oracle
很多觀念一時轉不過來
雖然 SQL 都大同小異
但就是這些被這些小異搞翻掉
整體架構跟 MySQL 差蠻多
只能說 MySQL 真的很容易上手
而且社群跟文獻都很多
所以要找參考資料比較容易
參考連結:
Oracle Commands
Oracle SQL
Oracle/PLSQL Topics
Oracle 開發筆記
Oracle基本语法集锦
oracel 數據完整性
0 回應:
張貼留言