判断表是否存在

判断表是否存在

创建一张表,应该先判断是否存在,然后再创建。好处就是,对于定时脚本创建表,如果执行报错的话,会一直执行,所以,最好先判断表是否存在。

方法一

如果仅仅是为了防止创建表的时候,不报错,则使用下列方式则简单。

CREATE TABLE IF NOT EXISTS `yc_advert_records` (
        `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
        `advert_id` int(10) unsigned NOT NULL COMMENT '广告ID'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='广告访问记录';

方法二

可以使用count来获取,表是否存在。当然where条件,也可以根据条件更改。

SELECT	count(*) FROM information_schema.TABLES t WHERE 	t.TABLE_SCHEMA = '数据库' AND t.TABLE_NAME = '表名'