我有一个SQL查询,我想在单个查询中插入多行。所以我用了类似的东西:
$sql = "INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29)";
mysql_query( $sql, $conn );
问题是当我执行此查询时,我想检查是否应检查例如上面的UNIQUE
键(不是PRIMARY KEY
),'name'
如果'name'
已经存在,则应更新相应的整行,否则将其插入。
例如,在下面的示例中,如果'Katrina'
数据库中已经存在该行,则应更新整行,而无论字段数如何。再次,如果'Samia'
不存在,则应插入该行。
我想到使用:
INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29) ON DUPLICATE KEY UPDATE
这是陷阱。我对如何进行感到困惑和困惑。我一次有多行要插入/更新。请给我一个方向。谢谢。