非常基本的 MySQL 代码不起作用
Very basic MySQL code not working
我正在努力处理一些非常基本的 MySQL 代码,所以我显然误解了一些非常基本的东西。这个超级简单的代码就是一个很好的例子:
CREATE TEMPORARY TABLE temp_table (count int);
INSERT INTO temp_table VALUES((1),(2),(3));
SELECT * FROM temp_table;
这个returns:
11 errors were found during analysis.
A comma or a closing bracket was expected (near "1" at position 31)
Unexpected token. (near ")" at position 32)
Unexpected token. (near "," at position 33)
Unexpected token. (near "(" at position 34)
Unexpected token. (near "2" at position 35)
Unexpected token. (near ")" at position 36)
Unexpected token. (near "," at position 37)
Unexpected token. (near "(" at position 38)
Unexpected token. (near "3" at position 39)
Unexpected token. (near ")" at position 40)
Unexpected token. (near ")" at position 41)
如果我只这样做就可以正常工作INSERT INTO temp_table VALUES(1);
但是我使用括号似乎有问题,所以我似乎无法插入多个值。
如果我做 INSERT INTO temp_table VALUES(1,2,3);
它 returns #1136 - Column count doesn't match value count at row 1
而且我 运行 一次又一次地遇到这样的问题,我在各种来源(包括 Whosebug)中找到了各种 MySQL 代码示例。所以我不确定我错过了什么。
在我的主机控制面板中,我可以看到我正在 运行ning MariaDB 5.3,在 phpMyAdmin (4.5.2) 中,我可以看到我正在 运行ning MySQL5.7.9.
然而我 运行 问题 运行ning 直接来自 MariaDB's website.
的代码
你介意(轻轻地)告诉我吗?我敢肯定这一定是基本的,我愿意学习。我只是不知道问题出在哪里,在我学习这些基础知识之前,我只会空转。
去掉换行 ()
CREATE TEMPORARY TABLE temp_table (count int);
INSERT INTO temp_table VALUES(1),(2),(3);
SELECT * FROM temp_table;
详细说明@scaisEdge 注意事项,当您使用多个值编写插入查询时,您不能将所有值组合在一起。
//Wrong
INSERT INTO temp_table values ((val1),(val2),(val3));
您应该改为执行以下操作:
//Right
INSERT INTO temp_table values (val1), (val2), (val3);
因此您的查询应该是:
INSERT INTO temp_table VALUES(1),(2),(3);
希望这解释,享受!
我正在努力处理一些非常基本的 MySQL 代码,所以我显然误解了一些非常基本的东西。这个超级简单的代码就是一个很好的例子:
CREATE TEMPORARY TABLE temp_table (count int);
INSERT INTO temp_table VALUES((1),(2),(3));
SELECT * FROM temp_table;
这个returns:
11 errors were found during analysis.
A comma or a closing bracket was expected (near "1" at position 31)
Unexpected token. (near ")" at position 32)
Unexpected token. (near "," at position 33)
Unexpected token. (near "(" at position 34)
Unexpected token. (near "2" at position 35)
Unexpected token. (near ")" at position 36)
Unexpected token. (near "," at position 37)
Unexpected token. (near "(" at position 38)
Unexpected token. (near "3" at position 39)
Unexpected token. (near ")" at position 40)
Unexpected token. (near ")" at position 41)
如果我只这样做就可以正常工作INSERT INTO temp_table VALUES(1);
但是我使用括号似乎有问题,所以我似乎无法插入多个值。
如果我做 INSERT INTO temp_table VALUES(1,2,3);
它 returns #1136 - Column count doesn't match value count at row 1
而且我 运行 一次又一次地遇到这样的问题,我在各种来源(包括 Whosebug)中找到了各种 MySQL 代码示例。所以我不确定我错过了什么。
在我的主机控制面板中,我可以看到我正在 运行ning MariaDB 5.3,在 phpMyAdmin (4.5.2) 中,我可以看到我正在 运行ning MySQL5.7.9.
然而我 运行 问题 运行ning 直接来自 MariaDB's website.
的代码你介意(轻轻地)告诉我吗?我敢肯定这一定是基本的,我愿意学习。我只是不知道问题出在哪里,在我学习这些基础知识之前,我只会空转。
去掉换行 ()
CREATE TEMPORARY TABLE temp_table (count int);
INSERT INTO temp_table VALUES(1),(2),(3);
SELECT * FROM temp_table;
详细说明@scaisEdge 注意事项,当您使用多个值编写插入查询时,您不能将所有值组合在一起。
//Wrong
INSERT INTO temp_table values ((val1),(val2),(val3));
您应该改为执行以下操作:
//Right
INSERT INTO temp_table values (val1), (val2), (val3);
因此您的查询应该是:
INSERT INTO temp_table VALUES(1),(2),(3);
希望这解释,享受!