虽然小
编辑器不建议人们使用
命令从数据库表中
删除东西,但这些删除命令总是有用的。
当涉及到删除表数据的关键字时,最可能记住的是删除。
但是,我们进行数据库开发和读取数据库数据。对另外两个兄弟使用较少。
现在
介绍一下另外两个兄弟,全部
都是删除表数据,但是很容易理解。
高级------滴
情况:下拉表TB - TB代表数据表的名称,相同的
技巧:删除内容和定义,释放
空间。简单地说,整个表被删除。除非添加一个表,否则不可能在将来添加数据。
例如,一个类是一个表,学生是表中的数据,学生的
位置被定义。
下拉表类,它是删除整个类。学生和责任正在消失。
例如,在下面的testschool数据库表{ }和{老师}类表表
执行以下代码后
类表清晰,完全删除!很暴力,因为老板罪有应得
老二截
TRUNCATETABLE结核病
技巧:删除内容,释放空间,但不要删除定义。不像下拉,他只是清空表数据,而且他更温和。
这也是一门课,他只带走了所有的学生。班级还在,
工作还在,如果新同学可以进去,也可以分配到工作中去。
删除内容很容易理解,不需要删除定义,即保留表的数据结构,就很容易理解。
上面的图
显示:删除内容
在执行语句之后,
发现数据表的结构仍然存在,即不删除定义。
至于空间的释放,请看下面的两张
图片。你会明白的。
右:id一般列列,因为在删除数据行之前,不会出现
连续(标识列表示删除删除未释放空间)。
在截断表教师后添加三个数据
右图:相同的ID是标识符列,当插入数据时,标识符列是连续的(显示截断删除是释放空间)。
注意:截断不能删除行数据,而要清除表。
老三-删除
删除表TB——尽管它也是删除整个表的数据,但过程很痛苦(
系统被按行删除,效率低于截断)
或
删除表TB的
条件 技巧:删除内容不删除定义,不释放空间。三兄弟中最有可能欺负的人之一。
然后没有
详细的删除说明,每个人都知道。
截短的小摘要:
截断表的
功能与删除语句相同,没有WHERE子句:两个都删除表中的所有行。
但是截断比删除快,并且使用较少的系统和事务日志资源。
删除语句每次删除一行,并为事务日志中删除的每一行记录一个项目。
1,在各种表上,无论大小,截断都非常快。如果回滚命令删除将被
取消,截断将不会被撤销。
2、截形是DDL
语言,就像所有其他DDL语言,他将隐式地提交和回滚命令不能使用的截断。
3,截断将重置高级行和所有索引。当完全
浏览整个表和索引时,截断
操作后的表比删除操作后的表快得多。
4,截断不能触发任何删除触发器。
5,当表清空时,表和表的索引被重置为初始大小,而删除不是。
6。不能清空父表