Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL截断、删除、删除建议_Sql_Database_Sql Delete_Truncate - Fatal编程技术网

SQL截断、删除、删除建议

SQL截断、删除、删除建议,sql,database,sql-delete,truncate,Sql,Database,Sql Delete,Truncate,我在SQL db中有一个表,我想从中删除数据?不过我想保留这些专栏 e、 我的表格有三列,名字,年龄,日期。我不想删除这些,我只想删除数据 我应该截断、删除还是删除?从TableName中删除应该可以做到这一点 删除表格也将删除列。不要删除-它将删除数据和定义。 如果删除-数据将消失,并且自上次值开始自动增加值。 如果您截断-那么就像您刚刚创建了表一样。没有数据,所有计数器都重置了截断是一种非常快速的表格格式。删除时不需要任何额外的空间。你不能阻止他的行动。不能指定条件。这是从表中删除所有数据的

我在SQL db中有一个表,我想从中删除数据?不过我想保留这些专栏

e、 我的表格有三列,名字,年龄,日期。我不想删除这些,我只想删除数据


我应该截断、删除还是删除?

从TableName中删除应该可以做到这一点


删除表格也将删除列。

不要删除-它将删除数据和定义。
如果删除-数据将消失,并且自上次值开始自动增加值。

如果您截断-那么就像您刚刚创建了表一样。没有数据,所有计数器都重置了

截断是一种非常快速的表格格式。删除时不需要任何额外的空间。你不能阻止他的行动。不能指定条件。这是从表中删除所有数据的最佳选择

Delete的速度要慢得多,您需要额外的空间来执行此操作,因为您必须能够回滚数据。如果需要删除所有数据,请使用truncate。如果需要指定条件,请使用“删除”


删除表-您可以通过删除并重新创建数据来删除表中的数据,就像截断数据一样,但速度较慢,并且可能存在一些其他问题,如外键依赖关系。我绝对不推荐这种操作。

Delete:Delete语句用于从表中删除行

Truncate:SQL Truncate命令用于删除表中的所有行,并释放包含表的空间


*Drop:*SQL Drop命令用于从数据库中删除对象。如果删除表,则会删除表中的所有行,并从数据库中删除表结构

截断表。在您的情况下,这将是一个很好的选择

我们可以在删除、截断和删除的条件下回滚数据。 但必须用于在执行查询删除、删除和截断之前开始事务

下面是一个例子:

Create Database Ankit

Create Table Tbl_Ankit(Name varchar(11))

insert into tbl_ankit(name) values('ankit');
insert into tbl_ankit(name) values('ankur');
insert into tbl_ankit(name) values('arti');

Select * From Tbl_Ankit

/*======================For Delete==================*/
Begin Transaction
Delete From Tbl_Ankit where Name='ankit'

Rollback
Select * From Tbl_Ankit

/*======================For Truncate==================*/
Begin Transaction
Truncate Table Tbl_Ankit 

Rollback
Select * From Tbl_Ankit

/*======================For Drop==================*/
Begin Transaction
Drop Table Tbl_Ankit 

Rollback
Select * From Tbl_Ankit

什么数据库?这类内容是特定于供应商的,不在SQL(查询语言)标准中涵盖。请更新您的标签-您使用的是
mysql
<代码>Oracle<代码>火鸟<代码>sql server?还有别的事。并使用SquirrelSQL连接到数据库以运行查询。谢谢,这很有帮助。