我收到了这个错误 MySQL说:文档
UPDA'在第1行
当我尝试这段代码时
IF EXISTS (SELECT * FROM table_name WHERE name = 'Smith' AND id =4) THEN
UPDATE table_name SET name = 'Test', tele =45 WHERE id =4 ELSE
INSERT INTO table_name( id, name, address, tele )
VALUES ( 5, 'John', 'NY', 56 );
复制键上的插入需要一些我在桌子上没有的唯一键。
请帮忙吗?我坚持了几天。
答案 0 :(得分:0)
使用on duplicate key insert
。
首先在表上定义唯一索引。实际上,如果id
是主键,那么您可以跳过此步骤。
我认为你想要这样的东西:
INSERT INTO table_name( id, name, address, tele )
VALUES ( 5, 'John', 'NY', 56 )
ON DUPLICATE KEY UPDATE name = 'Test', tele = 45;
这不是完全你的逻辑,但我认为这种行为更合理。如果4, john
在表格中,您的版本会在4, <anything not Smith>
处插入重复的行。