当MySQL删除表文件时,在磁盘上的表文件仍然存在,但是MySQL服务器不再关联它,因此从数据库角度看,表文件已经被删除。
MySQL通过更改存储在磁盘上的数据文件的分配表来管理表文件,使得MySQL服务器可以跟踪哪些表文件是由MySQL服务器使用的。 因此,当一个表被删除时,MySQL服务器只是更新分配表,而不会真正删除磁盘上的表文件。
另外,MySQL服务器可以在任何时候通过恢复分配表来恢复被删除的表。 在这种情况下,被删除的表文件将被恢复,并且MySQL服务器可以重新使用它。
删除表
Exists 方法 描述如果在 Dictionary 对象中指定的关键字存在,则返回 True,若不存在,则返回 False。(这句不是词语解释,这是数据库方法的名称!)
一般drop table if exists是数据库里面的,后面接表名,如:drop table if exists xxx_book
其意思是:如果数据库中存在xxx_book表,就把它从数据库中drop掉。备份sql中一般都有这样的语句,如果是数据库中有这个表,先drop掉,然后create表,然后再进行数据插入。
扩展资料
Mysql系统特性:
1、使用 C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。
2、支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。
3、为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。
4、支持多线程,充分利用 CPU 资源。
5、优化的 SQL查询算法,有效地提高查询速度。
6、既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
7、提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。
参考资料来源:百度百科
删除表数据有两种方法:delete和truncate。具体语句如下:
一、RUNCATE TABLE name :
删除表中的所有行,而不记录单个行删除操作。 在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。
TRUNCATE TABLE 的语法:TRUNCATE TABLE name ,参数 name 是要截断的表的名称或要删除其全部行的表的名称。
二、Delete from tablename where 1=1
1、delete语法:
DELETE FROM 表名称 WHERE 列名称 = 值。
2、删除所有行:
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:DELETE FROM table_name。