數(shù)據(jù)的操作(DML)-增刪改
1.插入數(shù)據(jù)
-- 不指定具體字段名:
INSERT [INTO] tbl_name VALUES (值)
-- 插入指定字段的數(shù)值
INSERT [INTO] tbl_name (字段名稱1,...) VALUES|VALUE(值)
這時(shí)候的字段和值的順序要一一對(duì)應(yīng)
值可以用DEFAULT 默認(rèn)值來(lái)代替
-- 同時(shí)插入多條記錄
INSERT [INTO] tbl_name[(字段名稱...)] VALUES(值...),(值...)...
只能用VALUES
示例:
INSERT tbl_name VALUES
(num1,num2),
(num3,num4);
-- 通過(guò)SET形式插入記錄
INSERT [INTO]tbl_name SET 字段名稱=值,...
示例:
INSERT tbl_name SET
id = 1,
username = 'AAA';
這種方式只能插入一條記錄
-- 將查詢結(jié)果(其他表的數(shù)據(jù))插入到表中
INSERT [INTO] tbl_name[(字段名稱,...)] SELECT 字段名稱 FROM tbl_name
示例:
全表插入,要求兩個(gè)表的字段和類型要一樣:
INSERT test
SELECT *FROM test1;
部分字段插入:
INSERT test(id)
SELECT id FROM test1;
使用第二種形式的時(shí)候,字段的數(shù)量需要匹配
要保證字段的名稱和類型要一樣
2.更新數(shù)據(jù)
UPDATE tbl_name SET 字段名稱=值,...[WHERE 條件][ORDER BY 字段名稱][LIMITE 限制條數(shù)]
如果不加WHERE 表中同一字段的所有數(shù)據(jù)都會(huì)被更新
字段的值可以用DEFAULT 來(lái)代替,這樣可以恢復(fù)默認(rèn)值
示例:
UPDATE tbl_name SET age=5,email='374070938@qq.com'
WHER id=1;
3.刪除數(shù)據(jù)
DELETE FROM tbl_name [WHERE 條件][ORDER BY字段名稱][LIMIT 限制條數(shù)]
條件如果不加的話,表中所有的數(shù)據(jù)都會(huì)被刪掉
雖然是刪除了數(shù)據(jù),但是AUTO_INCREMENT的值沒有重置
徹底改清空表TRUNCATE[TABLE]tbl_name 既可以清空數(shù)據(jù)表,又可以重置自增長(zhǎng),速度快,但是不能撤回刪除
DELETE可以撤回刪除