我试图看看是否有一种方法可以仅使用mysql查询而不是php迁移大型数据库。
INSERT INTO company (name) VALUES ('name') ON DUPLICATE KEY UPDATE name=name;
SET @companyID = LAST_INSERT_ID();
INSERT INTO phone2company (companyID,phoneID) VALUES (@companyID,'3');
INSERT INTO address2company (companyID,address) VALUES (@companyID,'address');
名称是唯一列,因此如果我得到重复的列,它将返回错误的LAST_INSERT_ID();其余的查询执行错误。
有什么办法可以在MySQL中放置if语句?像:
IF (@companyID <> @last_companyID) {
insert 1....
insert 2....
}
最佳答案
您可以创建一个函数或存储过程来做到这一点。另一种选择是使用case语句。
http://dev.mysql.com/doc/refman/5.0/en/case.html
关于mysql - MySQL,如果最后一次插入重复,则不执行下一条语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28096252/