標籤:欄位 constrain asc ref 查詢 null 檢索 包括 insert
1.瞭解SQL的種類
(1)DDL 資料定義語言 (Data Definition Language):定義資料庫中資料要如何儲存的,包括對資料庫物件的建立(create)修改(alter)刪除(drop)的操作,這些對象主要有資料庫,資料表,視圖,索引等。
(2)DML 資料操作語言:對資料庫表進行的操作,包括對資料庫表進行增加(insert)刪除(delete)修改(update)的操作。
(3)DQL 資料查詢語言:對資料庫表進行的查詢操作,既可以查詢(select)一個也可以查詢多個表,並且可以按不同的條件進行進行檢索資料。
(4)DCL 資料控制語言:對資料庫中的對象(grant)許可權進行設定和取消操作。
2.Oracle 11g支援的資料類型
(1)一共23種資料類型VARCHAR2, NUMBER, DATE, CHAR, FLOAT, INTEGER ......
(2)常用資料類型 ①字元型:VARCHAR2, NVARCHAR2, CHAR, NCHAR, LONG
②數字型: NUMBER, FLOAT
③日期型: DATE, TIMESTAMP
3.資料定義語言 (Data Definition Language)(DDL)
(1)Create建立表:CREATE TABLE table_name{
column_name datatype [null | not null]
column_name datatype [null | not null]
...
[constraint]
};
(2) Alter 修改表: ALTER TABLE table_name
ADD column_name | MODIFY column_name | DROP COLUMN column_name;
(3) Drop刪除表:DROP TABLE table_name;
(4)約束的使用:①主鍵約束:建立表時設定 PRIMARY KEY (cloumn_name)
為已有表添加 ALTER TABLE table_name
ADD CONSTRAINTS constraint_name PRIMARY KEY (cloumn_name)
②外鍵約束:建立表時設定 CONSTRAINT constraint_name FOREIGN KEY (column_name)
REFERENCES table_name (column_name)/*要引用的表名(列名)*/
ON DELETE CASCADE;/*設定串聯刪除*/
為已有表添加 ALTER TABLE table_name
ADD CONSTRAINT constraint_name FOREIGN KEY (column_name)
REFERENCES table_name (column_name)/*要引用的表名(列名)*/
ON DELETE CASCADE;/*設定串聯刪除*/
③CHECK約束:建立表時設定 CONSTRAINT constraint_name CHECK(column_name.condition)
為已有表添加 ALTER TABLE table_name
ADD CONSTRAINT constraint_name CHECK(column_name.condition)
④UNIQUE約束:建立表時設定 CONSTRAINT constraint_name FOREIGN KEY (column_name)
為已有表添加 ALTER TABLE table_name
CONSTRAINT constraint_name UNIQUE(column_name)
⑤NOT NULL約束:建立表時設定 NOT NULL
為已有表添加 ALTER TABLE table_name MODIFY column NOT NULL
4.資料操作語言(DML)
(1)添加資料INSERT 向表中添加資料:INSERT INTO table_name(column_name1,column_name2, ...) VALUES(data1, data2, ...)
通過其他表添加:INSERT INTO table_name(column_name1,column_name2, ...) select column_name1, column_name2, ...FROM table_name2
CREATE TABLE table_name AS SELECT column_name1,column_name2,...FROM source_table;
(2) 修改資料UPDATE 修改表中欄位 UPDATE table_name SET column_name1=data1 ,column_name2=data2,...[WHERE condition];
(3) 刪除資料DELETE DELETE FROM table_name[WHERE condition]
(4)其他資料動作陳述式:TRUNCATE TABLE table_name(刪除操作比delete語句刪除更快一些)
MERGE 對資料進行增加修改的操作MERGE [into] table_name1 USING table_name2
ON(condition) WHEN MATCHED THEN~~~~/*如果條件匹配執行的語句*/
WHEN NOT MATCHED THEN ~~~~ /*如果條件不匹配執行的語句*/
5. 資料查詢語句(DQL)(轉下)
6. 資料控制語句(DCL)(轉下)
...........
Oracle的SQL基礎