这个insert语句的语法有什么问题?

时间:2013-09-11 02:51:34

标签: mysql

这个insert语句的语法有什么问题?

INSERT INTO  products (`gallery_img`)
VALUES ('gwnnrjnsdknjsdkjnkjnsdnjvnksdvsdv')
WHERE name = 'Gmamble';

3 个答案:

答案 0 :(得分:5)

您插入 new 数据,这意味着where子句无关紧要,因为它尚未出现在表中。这将是:

insert into people (name, property)
  values ('paxdiablo', 'good-looking')

如果要更改当前数据,请使用update,其中where子句有意义:

update people
  set property = 'good-looking AND intelligent'
  where name = 'paxdiablo'

对于您的具体情况,它将是:

update products
  set gallery_img = 'gwnnrjnsdknjsdkjnkjnsdnjvnksdvsdv'
  where name = 'Gmamble'

答案 1 :(得分:1)

你不能使用带有insert语句的where where条件

如果您希望将tbl_temp2中的某些值插入到tbl_temp1中,请使用以下语法

INSERT INTO tbl_temp2 (fld_id)
  SELECT tbl_temp1.fld_order_id
  FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100;

答案 2 :(得分:0)

UPDATE,DELETE和SELECT语句可以使用WHERE子句,不要在INSERT语句中使用WHERE子句,因为它用于插入新行。