1. 程式人生 > >EasyDemo*SQL中的DDL&DML

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子句,則全表的資料都會被刪除,務必小心