
要删除MySQL数据库中的所有数据,有几种方法:
1、删除数据库里所有内容,包括表:可以删除数据库然后新建数据库就好了。
方法:drop database if exists 'dataBaseName';
CREATE DATABASE IF NOT EXISTS `dataBaseName`
这种方式快捷,一步到位。
还可以用如下方法删除整张表:
truncate tableName;
delete from tableName;
上面两种方法里,第一个直接删除表,不放到回收站;第二种方法删除表之后会放到回收站;
2、连同数据库用户也删除,以后不用了,那可以只做:drop database if exists 'dataBaseName'; 即可;
3、只删除数据库里的数据:
delete from tableName;
删除表里的全部数据。
学号 姓名 课程名 成绩
001 张三 数学 90
001 张三 语文 91
002 李四 数学 90
002 李四 语文 91
这样的表称为有数据冗余 我们常常把这样的表分为两个表,如:
表1
学号 姓名
001 张三
002 李四
表2
学号 课程名 成绩
001 数学 90
001 语文 91
002 数学 90
002 语文 91
这样处理后既可满足数据的第二范式要求,当然还不是最好的。通过关系模式的范式可以消除数据冗余,基本的数据库应满足第三范式(3NF)。
看看数据库的“范式”内容 你就更好理解了。
在T1表新增一列自增列,ID,然后用下面的语句 select from T1 as a where ID=(select min(ID) from T1 where 姓名=a姓名 and 时间=a时间) 上面这句可以查出所有不重复的记录,通过这个,你就可以删除了 delete from T1 a where ID not in (select min(ID) from T1 where 姓名=a姓名 and 时间=a时间) 执行删除 *** 作之前请备份数据库,防止误 *** 作!
删除表数据有两种方法:delete和truncate。具体语句如下:
一、RUNCATETABLEname:
删除表中的所有行,而不记录单个行删除 *** 作。在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。
TRUNCATETABLE的语法:TRUNCATETABLEname,参数name是要截断的表的名称或要删除其全部行的表的名称。
二、Deletefromtablenamewhere1=1
1、delete语法:
DELETEFROM表名称WHERE列名称=值。
2、删除所有行:
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:DELETEFROMtable_name。
扩展资料:
truncate和delete的共同点及区别:
1、truncate和delete只删除数据不删除表的结构(定义)。
2、delete语句是dml,这个 *** 作会放到rollbacksegement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发。
truncate是ddl, *** 作立即生效,原数据不放到rollbacksegment中,不能回滚 *** 作不触发trigger。
3、delete语句不影响表所占用的extent,高水线(highwatermark)保持原位置不动。truncate语句缺省情况下见空间释放到minextents个extent,除非使用reusestorage;truncate会将高水线复位(回到最开始)。
4、速度,一般来说:truncate
以上就是关于如何删除数据库中所有数据全部的内容,包括:如何删除数据库中所有数据、如何删除数据库中的冗余数据、紧急求助!! SQL 数据库表中,,删除多余的重复行,留一行即可拜托各位了 3Q等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)