INSERT INTO表IF表存在,否则CREATE TABLE

时间:2014-01-28 15:22:30

标签: mysql sql database

mysql支持这样的东西吗?

INSERT INTO `table` VALUES (NULL,"1234") IF TABLE EXISTS `table` ELSE CREATE TABLE `table` (id INT(10), word VARCHAR(500));

3 个答案:

答案 0 :(得分:6)

我创建了2个语句。试试这个:

CREATE TABLE IF NOT EXISTS `table` (
id INT(10),
word VARCHAR(500)
);
INSERT INTO `table` VALUES (NULL,"1234");

答案 1 :(得分:1)

您可以先检查表是否存在,如果不存在,则可以创建表。 在此之后执行insert语句..

http://dev.mysql.com/doc/refman/5.1/en/create-table.html

这样的东西
CREATE TABLE IF NOT EXISTS table (...)

INSERT INTO table VALUES (...)

注意:

  

但是,没有验证现有表的结构与CREATE TABLE语句指示的结构相同。

答案 2 :(得分:0)

MySQL不支持在SELECT语句中创建表格,但如果表格不存在,您可以通过快速检查来创建表格:

CREATE TABLE IF NOT EXISTS `table` (
    id INT(10),
    word VARCHAR(500)
);