【问题标题】:Incorrect syntax near the keyword 'where'关键字“where”附近的语法不正确
【发布时间】:2012-05-02 06:39:33
【问题描述】:
insert into product (CategoriesId) values (2) where Categories=' ab '

错误是

关键字“where”附近的语法不正确。

我看不懂,请帮帮我

【问题讨论】:

  • 这是 sql 吗?插入东西时不能有“where”子句...
  • 你到底想做什么?
  • 我认为您对UPDATE product SET CategoriesId =2 where Categories=' ab ' 感兴趣,插入用于新行,因此不确定您为什么需要where
  • V4Vendetta 更新完美运行,谢谢
  • @Chips_100 顺便说一句:如果您将INSERT 与SELECT 结合使用,您可以拥有WHERE。

标签: sql


【解决方案1】:

插入时不能有 where 语句。如果您使用的是表格,那么您可以。

INSERT INTO product (CategoriesId) values (2)

或者像这样:

INSERT INTO product (CategoriesId)
SELECT CategoriesId
FROM someTable
WHERE someTable.Categories=' ab '

或者,如果您有现有的行并想UPDATE 他们。然后这样做:

UPDATE product SET CategoriesId=2 WHERE Categories='ab'

【讨论】:

  • 你知道你是否对答案没问题。你可以考虑接受它
【解决方案2】:

如果您想在不插入记录时更新用户名或在主目录中。所以使用更新查询而不是插入查询和插入查询不使用 Where 子句。试试这个你可以得到你的答案。祝你好运。

【讨论】:

    【解决方案3】:

    你不能使用 where 子句和 insert ,你应该像这样使用 update

    update product set CategoriesId = 2 where Categories='ab'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-16
      • 2016-06-08
      • 1970-01-01
      • 2013-12-16
      • 2017-11-22
      • 2018-06-16
      相关资源
      最近更新 更多