MySQL工作台插入语句不起作用

时间:2011-06-17 04:23:27

标签: mysql insert workbench

所以我最近一直在玩MySQL,而且作为MSSQL的长期用户,我对它有点新鲜。

我一直在使用工作台来生成一些插入语句,虽然我确定它在它现在遇到麻烦之前就已经有效了。

当我右键单击一个表并选择“发送到SQL编辑器”然后选择“插入语句”时,它会给我一些看起来像这样的SQL:

INSERT INTO `mybigtable`.`itemcollection`
(`ID`,
`Type`,
`Name`,
`Description`,
`SomeID`)
VALUES
(
{ID: 123},
{Type: 1},
{Name: '123'},
{Description: '1234'},
{SomeID: 1}
);

这总是在ID值点抛出一个错误,说它不理解:符号(记住我没有修改它生成的代码)。现在我在网上看到的每个插入语句对于MySQL(以及我以前常用的插入语句)在值之前都没有名称,值只包含值。如果我从值之前删除所有名称,则insert语句可以正常工作。

因此,如果我自己构建插入语句就可以,但是“发送到SQL编辑器”似乎没有用。我在这里错过了一步吗?我的设置中有什么东西可能有问题吗?如果实际使用它们,为什么它会在值之前使用字段名生成SQL?

呸,令人沮丧。

1 个答案:

答案 0 :(得分:1)

这些最有可能是您手动输入自己值的占位符。它不会自动知道您要插入的值,因此无法为您填充整个查询。相反,它为您提供示例值,以便您知道需要输入什么类型的数据,然后您需要自己指定数据。 SQL Server做同样的事情(右键单击表,脚本表为,插入):

INSERT INTO [5819338].[dbo].[Customer]
           ([ID]
           ,[Name])
     VALUES
           (<ID, int,>
           ,<Name, varchar(50),>)

我相信有一个快捷键可以显示一个弹出窗口,您可以在其中输入模板值。也许在MySQL编辑器中有类似的东西?我不知道。