我可以检查条件,然后在SQL中将值插入表

时间:2019-05-13 08:58:46

标签: mysql insert-into

我是初学者。所以我什么都不知道。 我正在尝试插入值。但是我不能。所以我需要你的帮助。

我的代码:

INSERT INTO company_user (stamp_img) values ('test.png') SELECT * FROM company_user WHERE company_register = '123456789';

但是选择

  

语法错误:选择在此位置无效。

如何检查状况。 我要检查寄存器是否为真,然后插入值。

所以当我写

`INSERT INTO company_user (stamp_img) values ('test.png')`
  

错误代码:1062。键“ company_register_UNIQUE”的重复条目“

我该怎么办? Table Structure

1enter image description here

3 个答案:

答案 0 :(得分:0)

您可能正在寻找更新表。因此,您应该使用UPDATE语句:

UPDATE company_user SET stamp_img = 'test.png' WHERE company_register = '123456789';

这将修改表中company_register为123456789的行,将stamp_img设置为test.png。

这是您要寻找的吗?

答案 1 :(得分:0)

除了@Lelio

您是否要先插入数据然后再检查是否插入了数据?

直接在查询窗口中运行以下查询,然后查看是否要查找。

INSERT INTO `company_user` ('stamp_img') values ('test.png');

如果其唯一键约束是通过将 stamp_img 值更改为诸如test123.png等之类的内容来检查INSERT。如果通过更改内容使查询有效,则必须更新适合于您的要求

SELECT * FROM company_user WHERE company_register = '123456789';

答案 2 :(得分:0)

仅当company_user中有一个记录,且company_register为'123456789'时,此插入操作才会成功


INSERT INTO company_user (stamp_img)  (SELECT 'test.png' FROM company_user WHERE company_register = '123456789');