亚洲高清vr播放在线观看,欧美亚洲精品免费,欧美日韩天堂在线视频,午夜福利小视频

      學習啦 > 學習英語 > 專業(yè)英語 > 計算機英語 > 數(shù)據(jù)庫drop的用法

      數(shù)據(jù)庫drop的用法

      時間: 長思709 分享

      數(shù)據(jù)庫drop的用法

        數(shù)據(jù)庫drop的用法的用法你知道嗎?下面小編就跟你們詳細介紹下數(shù)據(jù)庫drop的用法的用法,希望對你們有用。

        數(shù)據(jù)庫drop的用法的用法如下:

        老大------drop

        出沒場合:drop table tb --tb表示數(shù)據(jù)表的名字,下同

        絕招:刪除內(nèi)容和定義,釋放空間。簡單來說就是把整個表去掉.以后要新增數(shù)據(jù)是不可能的,除非新增一個表,

        例如:一個班就是一個表,學生就是表中的數(shù)據(jù),學生的職務(wù)就是定義

        drop table class,就是把整個班移除.學生和職務(wù)都消失

        比如下面TestSchool數(shù)據(jù)庫中有兩張表[Classes]表和[Teacher]表

        當執(zhí)行下面代碼之后

        Classes表就被清楚,一干二凈! 刪除得非常暴力,作為老大實至名歸

        老二-----truncate

        出沒場合:truncate table tb

        絕招:刪除內(nèi)容、釋放空間但不刪除定義。與drop不同的是,他只是清空表數(shù)據(jù)而已,他比較溫柔.

        同樣也是一個班,他只去除所有的學生.班還在,職務(wù)還在,如果有新增的學生可以進去,也可以分配上職務(wù)

        刪除內(nèi)容很容易理解,不刪除定義也很容易理解,就是保留表的數(shù)據(jù)結(jié)構(gòu)

        上圖就表現(xiàn)了:刪除內(nèi)容

        執(zhí)行語句之后,發(fā)現(xiàn)數(shù)據(jù)表的結(jié)構(gòu)還在,也就是不刪除定義

        至于釋放空間,看下下面兩幅圖.你們就會明白的

        右圖:Id列標識列,因之前delete過行數(shù)據(jù),所以會出現(xiàn)標識列不連續(xù)(體現(xiàn)了delete刪除是不釋放空間的)

        經(jīng)過truncate table Teacher 之后 再新增三條數(shù)據(jù)

        右圖:同樣Id是標識列,發(fā)現(xiàn)插入數(shù)據(jù)的時候,標識列連續(xù)了(體現(xiàn)了truncate刪除是釋放空間)

        注意:truncate 不能刪除行數(shù)據(jù),要刪就要把表清空

        老三-----delete

        出沒場合:delete table tb --雖然也是刪除整個表的數(shù)據(jù),但是過程是痛苦的(系統(tǒng)一行一行地刪,效率較truncate低)

        或

        delete table tb where 條件

        絕招:刪除內(nèi)容不刪除定義,不釋放空間。三兄弟之中最容易欺負的一個

        然后關(guān)于delete的就不詳細說明了,大家都懂的

        關(guān)于truncate的小小總結(jié):

        truncate table 在功能上與不帶 WHERE 子句的 delete語句相同:二者均刪除表中的全部行。

        但 truncate 比 delete速度快,且使用的系統(tǒng)和事務(wù)日志資源少。

        delete 語句每次刪除一行,并在事務(wù)日志中為所刪除的每行記錄一項。所以可以對delete操作進行roll back

        1、truncate 在各種表上無論是大的還是小的都非??臁H绻蠷OLLBACK命令Delete將被撤銷,而 truncate 則不會被撤銷。

        2、truncate 是一個DDL語言,向其他所有的DDL語言一樣,他將被隱式提交,不能對 truncate 使用ROLLBACK命令。

        3、truncate 將重新設(shè)置高水平線和所有的索引。在對整個表和索引進行完全瀏覽時,經(jīng)過 truncate 操作后的表比Delete操作后的表要快得多。

        4、truncate 不能觸發(fā)任何Delete觸發(fā)器。

        5、當表被清空后表和表的索引講重新設(shè)置成初始大小,而delete則不能。

        6、不能清空父表

      543057