您的位置首页百科知识

truncate和delete之间有什么区别

truncate和delete之间有什么区别

的有关信息介绍如下:

问题补充说明:truncate和delete之间有什么区别... truncate和delete之间有什么区别 展开

truncate和delete之间有什么区别

TRUNCAT360问答E和DELETE有以下几点区别

1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLL灯便黑手BACK命令DELETE将被撤销,而TRUNCATE则不会被撤销。

2、TRUNCATE是一个DDL语言,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。

3、TRUNCATE不住字斤天向西而双沿将重新设置高水平线和所有的索若色只争极罪该线皮般引。在对整个表和索引进行完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。

4、TRUNCATE不能触发任何DELETE触发器。

5、不能授予任何人清空他人的表的权限。

6、当表被清空后表和表的索引讲重新设置成初始大小,而delete则不能。

7、不能清空父表。

数据库操作

使用方法:

truncatetabletable_name;

操作特性:

truncate只删除表中的所有数据,不删除表的结构;

truncate使ddl操作立即生效,原数据不放宪议另决玉军示深到rollbacksegment中,不能回滚,操作不触发trigger;

tr状术究息写军切值uncate语句缺省情况下将空间释放到minextents个extent,除非使用reusestorage;

truncate会将高水线复位(回到最开始)。

截取字符串

smartytruncate截取

从字符串开始处截取某长度的字符.默认是80个。

你也可以指定第二个参数作为追加在截取字林外班第阿缺预答祖宗符串後面的文本字串.该追加字看德满世张弱探代庆串被计算在截取长度中。

默认情况下,smarty液江几如语任只并没出专会截取到一个词的末尾。

如果你想要精确的截取多少个字符,把第三个参数改为"true"。

例截取:

index.php:

$smarty=newSmarty;

$smarty->assign针丝苗广武('articleTitle','TwoSistersReuniteafterEighteenYearsatChecko微投现活土乐完均宪华utCounter.');

$smarty->display('index.tpl');

index.tpl:

{$articleTitle}

{$articleTitle|truncate}

{$articleTitle|truncate:30}

{$articleTitle|truncate:30:""}

{$articleTitle|truncate:30:"---"}

{$articleTitle|truncate:30:"":true}

{$articleTitle|truncate:30:"...":t费钱紧预rue}

输出结果:

TwoSistersReuniteafterEighteenYearsatCheckoutCounter.

TwoSistersReunit据机零跑eafterEighteenYears令治化atCheckoutCount称号族另er.

TwoSistersReunit急烟花集村谈不香扬光eafter...

TwoSistersReuniteafter

TwoSistersReun决政演括席酒依iteafter---

TwoSistersReuniteafterEigh

TwoSistersReuniteafterE...