SQLserver2008R2操作数据库表命令
1.修改数据表字段长度语句:
ALTER TABLE tableName(表名) ALTER COLUMN columnName(字段名) VARCHAR(n(长度))
2.DROP,TRUNCATE和DELETE的区别。
使⽤这3个命令时⼀定要谨慎,都是删除表数据的命令。
按删除实⼒分:第⼀、DROP;第⼆、TRUNCATE;第三、DELETE
⽆条件时都是删除表中的全部数据‘。TRUNCATE⽐DELECTE速度快,占⽤系统资源少。以下是详细区分:
DROP:命令DROP TABLE tableName(表名)------删除内容和定义,释放空间。即删除整个表,包括表结构,数据,定义。⽆法回滚,恢复,要恢复只能重新新建⼀个表。⾮常暴⼒。
TRUNCATE:命令 TRUNCATE TABLE tableName(表名)------删除内容,释放空间但不删除定义结构,只清空表数据。保留表结构(字段),属性。所谓释放空间就是删除表的ID标识列,在插⼊数据时,标识列(ID)重新从1开始,DELETE是做不到的。
a.TRUNCATE不能删除⾏数据,要删就清空整张表。
b.删除数据速度来说,TRUNCATE三者中最快,属于DDL语⾔,将被隐式提交时若有ROLLBACK(回滚)命令, TRUNCATE不会被撤销(回滚),但DELETE可以。
c.重新设置⾼⽔平线和所有的索引。在对整张表和索引进⾏完全浏览时,经过TRUNCATE操作后的表⽐DELETE操作后的表要快很多。
d.TRUNCATE不能清空⽗表,不能触发任何DELETE触发器,当表被清空后表与表的索引将重新设置成初始⼤⼩,⽽DELETE则不能。
DELETE:命令DELETE TABLE tableName(表名)------也可以删除整个表数据,但是⾮常慢,系统是⼀⾏⼀⾏删除,效率低。后⾯可以跟条件,如:DELETE TABLE tableName(表名) WHERE (条件) 。只删除数据内容,不删除定义结构,不释放空间。
truncate可以加条件吗
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论