MySQL-Insert语句在只使用外键进入表时失败
因此,我的表如下所示(从MySQL-Insert语句在只使用外键进入表时失败,mysql,syntax,Mysql,Syntax,因此,我的表如下所示(从“Show Create table”查询中): 我试图在这个表中输入一个新条目,如下所示: INSERT INTO stars_in_movies (907010, 834410); 我得到一个错误如下: ERROR 1064 (4200): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right
“Show Create table”
查询中):
我试图在这个表中输入一个新条目,如下所示:
INSERT INTO stars_in_movies (907010, 834410);
我得到一个错误如下:
ERROR 1064 (4200): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to user near '907010, 834410)' at line 1
现在我知道这个错误只是一个语法错误,但是为什么我会收到这样一个简单的插入查询的错误呢?Everywhere online建议这是一条有效的语句,特别是如果这两个条目字段是来自其他两个引用表的实际ID
编辑:
好的,对于这个简单的例子,我只是缺少了value
关键字。还有一个问题,这个查询为什么会返回相同的错误
INSERT INTO stars_in_movies
VALUES
(693109, m.id)
SELECT m.id
FROM movies m
WHERE m.title='Inception';
您似乎缺少
值
关键字
INSERT INTO stars_in_movies (star_id, movie_id) VALUES (907010, 834410)
^^^^^^
您似乎缺少
值
关键字
INSERT INTO stars_in_movies (star_id, movie_id) VALUES (907010, 834410)
^^^^^^
试试这个:
INSERT INTO stars_in_movies values (907010, 834410);
您缺少关键字值
编辑:
在注释之后,您还有一个选项可以像这样插入到表中
INSERT INTO stars_in_movies
select 907010, 834410;
编辑:
这个查询不起作用
INSERT INTO stars_in_movies
VALUES
(693109, m.id)
SELECT m.id
FROM movies m
WHERE m.title='Inception';
您需要在值中指定特定值。在
INSERT INTO stars_in_movies
VALUES
(693109, m.id)
m、 未定义id,因此分析仪不知道该id。所以你得到了错误
您可能正在寻找以下内容:
INSERT INTO stars_in_movies
SELECT 693109, m.id
FROM movies m
WHERE m.title='Inception';
试试这个:
INSERT INTO stars_in_movies values (907010, 834410);
您缺少关键字值
编辑:
在注释之后,您还有一个选项可以像这样插入到表中
INSERT INTO stars_in_movies
select 907010, 834410;
编辑:
这个查询不起作用
INSERT INTO stars_in_movies
VALUES
(693109, m.id)
SELECT m.id
FROM movies m
WHERE m.title='Inception';
您需要在值中指定特定值。在
INSERT INTO stars_in_movies
VALUES
(693109, m.id)
m、 未定义id,因此分析仪不知道该id。所以你得到了错误
您可能正在寻找以下内容:
INSERT INTO stars_in_movies
SELECT 693109, m.id
FROM movies m
WHERE m.title='Inception';
好吧,这是难以置信的琐碎,那么为什么这个问题表明我可以不使用VALUES关键字就插入?@LeoVannini:-如果我错了,请纠正我,但这与此有什么联系?@rahultripati我道歉,错了@LeoVannini:-是的,这是不同的。如果您使用select语句来添加值,那么您不必添加values关键字。@LeoVannini:-更新了我的回答好的,这是非常琐碎的,那么,这个问题为什么表明我可以不使用VALUES关键字就进行插入?@LeoVannini:-如果我错了,请纠正我,但这与此有什么联系?@rahultripati我道歉,错了@LeoVannini:-是的,这是不同的。如果使用select语句添加值,则不必添加values关键字。@LeoVannini:-更新了我的回答是!非常感谢rahul,最后一个例子非常完美!再次非常感谢你,特别是对为什么它不起作用的解释。是的!非常感谢rahul,最后一个例子非常完美!再次非常感谢您,特别是对于它为什么不起作用的解释。Re:EDIT,您不能合并INSERT。。。值
和插入。。。选择
Re:EDIT,您不能合并INSERT。。。值
和插入。。。选择