更新操作
insert into people set id=12,name='William',age=25;
insert into people(name,age) values('william',25);
11.2.1 增加多個值使用單個inert語句
insert into people(name,age) values('william',25),(bart',15),('mary',13);
11.2.2 處理重復鍵值
有以下方式處理鍵值:
1.你沒有明確怎樣處理一個重復值,MySQL將拋棄使用一個錯誤和拋棄這新的記錄。
2.你能夠告訴Mysql忽略掉這新的記錄采用不產生一個錯誤。insert IGNORE
3.你能夠使用ON DUPLICATE KEY UPDATE語句來更新指定的列。
11.2.3 使用INSERT..on duplicate key udate
對于重復值更新指定的列采用上面的命令
insert into log(name,location,counter)
values ('Tantor','WaterHole',1)
on duplicate key update counter=counter+1;
11.3 采用replace語句
如果沒有重復元素被發現和insert等同
對于重復額杭電整個替換掉,replace相比(insert和delete是單原子操作)
replace into people (id,name,age) values(12,'william',25),(13,'Bart',15),(14,'Mary‘,12);
11.4 upadate語句
update table_name set column_name=value[, column_name=value]...
where..;
11.4.1 使用update使用order by和limit
update people set id=id-1 order by id;
11.4.2 阻止危險的update語句
使用--safe--updates選項
11.4.3 多個表的更新語句
11.5 這刪除和truncate表語句
delete移除相關的記錄,truncate清空表中的數據
11.5.1 使用delete用order by和limit
delete from people where name='Emily' limit 4
delete from people where name='Emily' order by id desc limit 4;
11.5.2 多個表的刪除語句
11.6 ?需要的權限對于更新語句
1.insert,update和delete需要insert,update和delete權限
2.replace需要insert和delete權限
3.truncate需要delete權限
總結