mysql清空表数据命令_数据库truncate

时刻小站 194

从数据库中删除数据,使用DELETE语句。其语法如下

DELETEFROMtable_name [WHERE];

语句解析:table_name为表名称,[WHERE ]为删除条件

例如如下例子:删除的是表admin_user_table,uid等于1的数据

DELETEFROMadmin_user_tableWHEREuid =1;

如何知道是否删除了这条数据呢?我们使用查询语句,查询uid=1,如果查询结果为空,则说明该数据已被删除

mysql>SELECT * FROM admin_user_table WHERE uid = 1; EMPTYset(0.00 sec)

温馨提示:如果想删除表中所有的记录,还可以使用 TRUNCATE TABLE 语句,TRUNCATE将直接删除原来的表,并且重新创建一个表,其语法结构为TRUNCATE TABLE table_name。TRUNCATE是直接删除表而不是删除记录,因此执行速度比DELETE快。

MySQL删除语句实例:

1、创建一个名为admin_user_table的表,DDL语句如下:

CREATETABLE`admin_user_table`(`id`INT(11)UNSIGNEDNOTNULLAUTO_INCREMENTCOMMENT主键,`name`VARCHAR(40)CHARACTERSETutf8NOTNULLDEFAULTCOMMENT姓名,`info`VARCHAR(100)CHARACTERSETutf8NOTNULLDEFAULTCOMMENT个人信息,`create_time`INT(11)DEFAULTNULLCOMMENT创建时间,`update_time`INT(11)DEFAULTNULLCOMMENT更新时间,`delete_time`INT(11)DEFAULTNULLCOMMENT删除时间, PRIMARYKEY(`id`) )ENGINE= MyISAM AUTO_INCREMENT =4DEFAULTCHARSET= utf8mb4;

对admin_user_table表新增一些数据

INSERTINTOadmin_user_table (id,name, info, create_time, update_time, delete_time )VALUES(1,张三,他来自广东省广州市,1618719462,1618719462,NULL), (2,李四,他来自广东省深圳市,1618719462,1618719462,NULL), (3,王五,他来自广东省东莞市,1618719462,1618719462,NULL), (4,陈六,他来自广东省肇庆市,1618719462,1618719462,NULL), (5,高七,他来自广东省中山市,1618719462,1618719462,NULL);

当在DOC界面,输入SELECT * FROM admin_user_table看到如下图,说明数据新增成功。

SELECT*FROMadmin_user_table;

查找结果图

我们会发现出现了乱码。这是因为现在是使用utf8字符编码来显示中文数据的,但是因为操作系统是中文操作系统,默认使用的字符集是GB2312,所以需要把输出窗口使用的字符编码改成gb2312才能够正常显示中文。

使用命令如下:

setcharacter_set_results=gb2312;

这样就可以显示为正常的文字而不是乱码。

现在我们可以试着去删除一些数据。

例1、删除id值为2的数据

步骤:在操作前,我们先查看一下id=2的数据是否存在

可以看到表中是有这条数据的。

使用DELETE语句删除。执行情况如下:

语句:

DELETEFROMadmin_user_tableWHEREid=2;SELECT*FROMadmin_user_tableWHEREid=2;

查询结果为空,说明删除数据成功。

例2:我们删除id是3-5之间的数据。

我们的数据还有4条,现在我们删除id为3到5之间的数据,可以使用这个语句

DELETEFROMadmin_user_tableWHEREidBETWEEN3AND5;

这时候我们发现已经删除了id为3到5之间的数据已经删除。

例3:删除表所有的数据。我们可以使用

DELETEFROMadmin_user_table 或TRUNCATETABLEadmin_user_table

上一篇:

下一篇:

  同类阅读

分享