刪除數據語法
delete [from] 表名 [where <刪除條件>]
truncate table 表名
truncate 注意事項
1,表結構,列,約束等不被改動
2,不用用於有外鍵約束的表
3,標識列重新來時編號
例子
use E_Market
go
--刪除的語法,使用delete進行刪除 delete [from] 表名 [where]
--[1]基本刪除,省略where 它將刪除表中所有的數據
select * from OrderInfo --查看訂單表中所有的數據
delete from OrderInfo --三行受影響
--使用delete進行刪除數據,刪除后表示列繼續增長,不會從標識種子開始增長
--【2】帶條件的刪除,確認是否存在主外鍵關系,如果存在,先刪除子表中的數據再刪除主表中的數據
delete from OrderInfo where UserId='yoyo'
delete from UserInfo where UserId='yoyo'
select * from UserInfo
select * from OrderInfo
--刪除的兩個要求1)刪除哪個表?2)條件是什么?
--使用truncate table 刪除數據
/*
1)類似於沒有where條件的delete語句,刪除表中的所有數據
2)刪除數據之后再插入數據,標識列從標識種子開始
3)不能刪除有外鍵約束的表
*/
--刪除訂單表orderinfo的數據
truncate table OrderInfo
--不能用於有外鍵約束的表
--因為UserInfo表中的UserId被orderinfo當中的UserId所引用所有使用truncate table刪除數據時會報錯
truncate table UserInfo --無法截斷表 'UserInfo',因為該表正由 FOREIGN KEY 約束引用。
--但是可以使用