SQL語句基本

1、建表
CREATE TABLE Student(
Cno CHAR(4) PRIMARY KEY,
Cname char(40) not null,
Cpno CHAR(4),
FOREIGN KEY Cpno REFERENCES Course(Cno)
);
注意: 主鍵的一種寫法和外鍵的寫法,還有一些約束(not null, autoincreament, unique...)
CREATE TABLE SC(
Sno CHAR(9),
Cno CHAR(4),
Grade INTEGER,
PRIMARY KEY(Sno, Cno),
FOREIGN KEY (Sno) REFERENCES Student(Sno),
FOREIGN KEY (Cno) REFERENCES Course(Cno)
);
注意: 兩個主鍵的定義的方法和外鍵的定義方法。
2、修改表
ALTER TABLE <表名>
#用於增加新列和新的完整性約束條件
[ADD <新列名> <數據類型> [完整性約束]]
#刪除制動的完整性約束條件
[DROP <完整性約束名>]
#修改原有的列定義
[ALTER COLUMN <列名><數據類型>]
 
ALTER TABLE Student ADD S_entrance DATE;
ALTER TABLE Student ALTER COLUMN Sage INT;
ALTER TABLE Course ADD UNIQUE(Cname);
3、刪除表
DROP TABLE <表名> [RESTRICT | CASCADE];
注意:     1、RESTRICT 刪除表是有限制條件的 
             2、CASCADE刪除表沒有限制條件,刪除基本表的同時,相關的依賴對象(如: 視圖)也會被刪除。
4、數據查詢
SELECT [ALL | DISTINCT] <目標列表達式>[, <目標列表達式>]...
FROM <表名或視圖名> [, <表名或視圖名>]...
[ WHERE <條件表達式> ]
[ GROUP BY <列名1> [ HAVING <條件表達式> ]]
[ ORDER BY <列名2> [ASC | DESC]]
常用的查詢條件:
查詢條件 謂詞
比較 =, >, <. >=, <=, !=, <>, !>, !<; NOT+上述比較運算符
確定範圍 BETWEEN AND,  NOT BETWEEN AND
確定集合 IN, NOT IN
字符匹配 LIKE, NOT LIKE
空值 IS NULL,   IS NOT NULL
多重條件(邏輯運算) AND,  OR,  NOT
字符匹配:
    1、‘%’(百分號)代表任意長度(可以是0)的字符串
    2、 ‘_' (下劃線)代表任意單個字符
    3、 如果用戶要查詢的字符串本身就含有通配符 % 或 _,那麼就要用ESCAPE '<換碼字符>'
SELECT * FROM Course WHERE Cname like 'DB\_%i_ _' ESCAPE '\'; #第一個_是普通字符,後面兩個是通配符
5、插入數據
INSERT
INTO <表名> [ (<屬性列1> [ ,<屬性列2 >...]) ]
VALUES( <常量1> [, <常量列2>...]);
注意: 可以插入子查詢的結果。
6、修改數據
UPDATE <表名>
SET <列名1> = <表達式1> [, <列名2> = <表達式2>]...
[WHERE <條件>];
注意: 可以帶子查詢的修改數據

7、刪除數據
DELETE
FROM <表名>
[WHERE <條件>];
注意: 如果沒有條件,那麼刪除操作將是刪除這個表中的數據,但是這個表的仍然在,只是沒有了數據。
發佈了44 篇原創文章 · 獲贊 3 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章