MySQL “CREATE TABLE IF NOT EXISTS” -> Error 1050

2019-03-11 14:15发布

Using the command:

CREATE TABLE IF NOT EXISTS `test`.`t1` (
    `col` VARCHAR(16) NOT NULL
) ENGINE=MEMORY;

Running this twice in the MySQL Query Browser results in:

Table 't1' already exists Error 1050

I would have thought that creating the table "IF NOT EXISTS" would not throw errors. Am I missing something or is this a bug? I am running version 5.1. Thanks.

8条回答
forever°为你锁心
2楼-- · 2019-03-11 14:48

Works fine for me in 5.0.27

I just get a warning (not an error) that the table exists;

查看更多
Ridiculous、
3楼-- · 2019-03-11 14:54

As already stated, it's a warning not an error, but (if like me) you want things to run without warnings, you can disable that warning, then re-enable it again when you're done.

SET sql_notes = 0;      -- Temporarily disable the "Table already exists" warning
CREATE TABLE IF NOT EXISTS ...
SET sql_notes = 1;      -- And then re-enable the warning again
查看更多
登录 后发表回答