MySQL中的DDL語句,DML語句初步
MySQL中的DDL語句:
1.建表語句 - CREATE TABLE ...;
CREATE TABLE 表名(
columnName dataType(length) [行級約束],
columnName dataType(length) [行級約束],
columnName dataType(length) [行級約束],
columnName dataType(length) [行級約束]
[,表級約束]
);
例:
CREATE TABLE t_user(
user_id INT(10),
user_name VARCHAR(30),
user_psw VARCHAR(30)
);
2.刪除表語句 - DROP TABLE 表名;
DROP TABLE t_user;
DROP TABLE IF EXISTS t_user;(MySQL 特有語法)
3.新增表字段語句 - ALTER TABLE 表名 ADD 欄位名 資料型別 約束;
ALTER TABLE t_user ADD user_birthday TIMESTAMP;
4.修改欄位資料型別和約束 - ALTER TABLE 表名 MODIFY 原有欄位名 新資料型別 約束;
ALTER TABLE t_user MODIFY user_id VARCHAR(10);#修改user_id欄位的資料型別為VARCHAR
ALTER TABLE t_user MODIFY user_id VARCHAR(10) PRIMARY KEY;#增加user_id欄位為主鍵約束
ALTER TABLE t_user DROP PRIMARY KEY;#刪除主鍵約束
注:MODIFY不能修改欄位名
5.修改欄位名,資料型別和約束 - ALTER TABLE 表名 CHANGE 舊欄位名 新欄位名 新資料型別 約束;
ALTER TABLE t_user CHANGE user_id user_num INT(10);#修改欄位名
ALTER TABLE t_user CHANGE user_id user_id VARCHAR(10);#修改欄位資料型別
ALTER TABLE t_user CHANGE user_id user_id INT(10) NOT NULL;#新增非空約束
ALTER TABLE t_user CHANGE user_id user_id INT(10);#刪除非空約束
6.刪除指定欄位 - ALTER TABLE 表名 DROP COLUMN 欄位名;
ALTER TABLE t_user DROP COLUMN user_id;#刪除user_id欄位
MySQL中的DML語句(初步):
1.查詢語句 - SELECT... FROM 表名;
SELECT * FROM t_user;#全表查詢
SELECT user_id,user_name,user_psw FROM t_user;#按欄位查詢(多個欄位之間用逗號分隔)
2.插入語句 - INSERT INTO 表名(欄位名,欄位名,欄位名,...) VALUES(值,值,值);
INSERT INTO t_user(user_id,user_name,user_psw) VALUES(11,'hello','java');
注:表名後括號內的欄位的順序沒有要求,個數也沒有要求,值必須與相應欄位的資料型別相一致,否則會報錯,VARCHAR型別的值單引號和雙引號都行,但是用單引號可以使SQL語句的相容性比較好(在有些資料庫得用雙引號才行,用單引號就報錯)
INSERT INTO t_user VALUES(22,'HELLO','PHP');
注:如果不寫欄位名,那麼新增VALUES值的時候必須按照當前表時的欄位順序進行新增,否則會報錯
INSERT INTO t_user(user_id,user_name,user_psw) VALUES(88,'xiaowang','lala'),(99,'zhangsan','green');#一次插入多條語句的寫法
3.更新語句 - UPDATE 表名 SET 欄位名=值 WHERE 條件;
UPDATE t_user SET user_name='my_name' WHERE user_id=3;#更新user_id等於3的那行資料的user_name為my_name
注:如果不加條件則進行的是全表更新
4.刪除語句 - DELETE FROM 表名 WHERE 條件;
DELETE FROM t_user WHERE user_id=1;#刪除user_id等於1的那條資料