※ 引述《sickleave (咳到死)》之銘言:
: ※ 引述《followaymis (abcde)》之銘言:
: : 各位高手大家好....
: : 小弟是sql2005的新手...
: : 上次在看語法書的時候...
: : 發現truncate跟delete都是刪除資料
: : 只是delete的可以加條件去刪除(where)..
: : 那如果我要刪除全部資料的時候....
: : 到底要用哪一個阿?????
: : drop我知道..是連資料表定義都會被刪除.....
: : 所以想問truncate跟delete的差別....
: : 先謝謝各位了~~~~~
: truncate好像會reset掉auto_increment的值(歸零).
: 而delete不會.
: 速度上應該差不多,但truncate會快一點.
truncate沒有 log delete有
truncate資料表配置分負會收回,delete不會
truncate因為沒有 log,所以不會觸發 trigger
--
http://www.wretch.cc/blog/Adonisy
脆瓜撞球工作室~~~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.230.181.26
> -------------------------------------------------------------------------- <
作者: alexcwtzeng (狂瀉不止) 看板: Database
標題: Re: [SQL ] 請問刪除語法中的truncate和delete 有ꐠ…
時間: Mon Aug 27 16:28:25 2007
※ 引述《Adonisy (拍手小安)》之銘言:
: ※ 引述《sickleave (咳到死)》之銘言:
: : truncate好像會reset掉auto_increment的值(歸零).
: : 而delete不會.
: : 速度上應該差不多,但truncate會快一點.
: truncate沒有 log delete有
: truncate資料表配置分負會收回,delete不會
: truncate因為沒有 log,所以不會觸發 trigger
delete 可以 rollback,truncate 不行
delete 可以加 where 條件,truncate 不行
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.250.131.199