EasyDemo*SQL中的DDL&DML
一、SQL(DDL、DML)
1.1建立表(DDL)
1.1.1CREATE語句
*CREATE TABLE [schema.]table_name(
Column_name datatype[DEFAULT expr][,…]
);
1.1.2DESC語句
*DESC table_name;
1.1.3DEFAULT語句
*可以通過DEFAULT子句給列指定預設值
*給gender列賦預設值’M’,如果沒有指定性別的員工,預設是男性
1.1.4NOT NULL
*非空(Not Null)是一種約束條件,用於確保欄位值不為空
*預設情況下,任何列都允許有空值
*當某個欄位被設定了非空約束條件,這個欄位中必須存在有效值
*當執行插入輸入的操作時,必須提供這個列的資料
*當執行更新操作時,不能給這個列的值設定為NULL
1.2修改表(DDL)
1.1.1修改表名
*在建表後入股希望修改表名,可使用RENAME語句實現
*語法如下,將改變表名old_name為new_name:
RENAME old_name TO new_name;
1.1.2增加列
*給表增加列可使用ALTER TABLE的ADD子句實現
*語法
ALTER TABLE table_name ADD
(column datatype[DEFAULT expr][,column datatype…])
*列只能增加在最後,不能插入到現有的列中
1.1.3刪除列
*使用ALTER TABLE的DROP子句刪除不需要的列
*語法
ALTER TABLE table_name DROP(column);
*刪除欄位需要從每行中刪除掉該欄位佔據的長度和資料,並釋放在資料塊中佔據的空 間,如果表記錄比較大,刪除欄位可能需要比較長的時間
1.1.4修改列
*剪標後,可改變表中列的資料型別、長度、預設值
*修改僅對以後插入的資料有效
*如果把長度由大改小,有可能不成功
*語法
ALTER TABLE table_name MODIFY
(column datatype[DEFAULT expr][,column datatype…])
1.3DML語句
1.1.1INSERT語句
*給資料表增加記錄
*語法如下
INSERT INTO table_name[(column[,column…])]
VALUES(value[,value…]);
*執行DML操作後,需要再執行commit語句,才算真正確認了此操作
*如果插入的列有日期欄位,需要考慮日期的格式
*預設的日期格式’DD-MON-RR’
*可以自定義日期格式,用TO_DATE函式轉換為日期型別的資料
1.1.2UPDATE語句
*更新表中的記錄
*語法如下
UPDATE table_name
SET column=value[,column = value]…
[WHERE condition];
*如果沒有WHERE子句,則全表的資料都會被更新,務必小心
1.1.3DELETE語句
*刪除表中的記錄
*語法如下
DELETE[FROM] table_name[WHERE condition];
*如果沒有WHERE子句,則全表的資料都會被刪除,務必小心