创建一个 WordPress 的插件,在插件被激活的时候创建自定义数据库表,但是如果表已经存在了,那么创建必然会失败,这时候我们就需要先判断指定的表或者数据库是否存在了。
MySQL 判断表和数据库是否存在有四种方式:
SHOW TABLES LIKE '%wp_order%';
select TABLE_NAME from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='dbname' and TABLE_NAME='tablename';
如果单纯显示是否存在数据库, 则可用
show databases like 'db_name';
单纯显示是否存在数据表, 则可用
show tables like 'table_name';
如果表不存在就建立这个表,那么可以直接用 create table if not exists tablename
这样的指令来建立,不需要先去查询表是否存在,在导出 SQL 文件里面一般都是这样的。
create table if not exists like old_table_name;