Mysql 删除表

Mysql 删除表,第1张

删除表

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等都可以用作数据表名和数据列名。

参考资料来源:百度百科

DROP TABLE table_name (删除表);delete from 表名 where 删除条件(删除表内数据,用 delete);truncate table 表名(清除表内数据,保存表结构,用 truncate)。

扩展资料:

1、MySQL中删除数据表是非常容易 *** 作的, 但是你再进行删除表 *** 作时要非常小心,因为执行删除命令后所有数据都会消失。

2、命令提示窗口中删除数据表:SQL语句为 DROP TABLE 。

3、使用PHP脚本删除数据表:PHP使用 mysqli_query 函数来删除 MySQL 数据表。该函数有两个参数,在执行成功时返回 TRUE,否则返回 FALSE。语法mysqli_query(connection,query,resultmode)。

4、当你不再需要该表时, 用 drop;当你仍要保留该表,但要删除所有记录时, 用 truncate;当你要删除部分记录时, 用 delete。

5、drop table table_name : 删除表全部数据和表结构,立刻释放磁盘空间,不管是 Innodb 和 MyISAM。实例,删除学生表:drop table student。

6、truncate table table_name : 删除表全部数据,保留表结构,立刻释放磁盘空间 ,不管是 Innodb 和 MyISAM。实例,删除学生表:truncate table student。

7、delete from table_name : 删除表全部数据,表结构不变,对于 MyISAM 会立刻释放磁盘空间,InnoDB 不会释放磁盘空间。实例,删除学生表:delete from student。

8、delete from table_name where xxx : 带条件的删除,表结构不变,不管是 innodb 还是 MyISAM 都不会释放磁盘空间。实例,删除学生表中姓名为 "张三" 的数据:delete from student where T_name = "张三"。

9、delete *** 作以后,使用 optimize table table_name 会立刻释放磁盘空间,不管是 innodb 还是 myisam。实例,删除学生表中姓名为 "张三" 的数据:delete from student where T_name = "张三"。

10、delete from 表以后虽然未释放磁盘空间,但是下次插入数据的时候,仍然可以使用这部分空间。

-- 找其他表(最好是表结构一样的) 这里找的表叫ip_taobao 先复制这个表的.frm(表结构)文件 改名为误删的表名

?12 cp -a ip_taobao.frm tracking20160501.frm -- 这里为了保持mysql文件的拥有人和所属组 所以使用-a参数

-- 如果下面的 *** 作有什么奇葩问题 可以重启一下数据库

-- 在mysql里 使用discard space命令 废弃误删表的表空间文件

?1 alter table tracking20160501 discard tablespace

-- 再复制ip_taobao表的表空间文件 改名为误删的表名

?1 cp -a ip_taobao.ibd tracking20160501.ibd-- 同样使用-a 保持拥有人和所属组

-- 在mysql里 使用import space命令 导入新的表空间文件

?12 mysql>alter table tracking20160501 import tablespace -- 导入时间可能会长点 Query OK, 0 rows affected, 5 warnings (7 min 36.94 sec)

-- 现在可以正常查询、删除和创建回这个表了

?123 mysql>select * from tracking20160501 limit 1 mysql>drop table tracking20160501mysql>create table tracking20160501(id int)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7542581.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-06
下一篇 2023-04-06

发表评论

登录后才能评论

评论列表(0条)

保存