0

我有一些通过 API 下载到 SQL 数据库中的信息。我正在设置 cron 在半夜执行此操作。有时会添加新产品或编辑旧产品。我需要添加新的并更新旧的(如果存在)。我很确定它看起来像:

If (id exists){
    update product
}else{
    insert product

这是最好的方法吗?只是放下然后重新构建它呢?

4

2 回答 2

1

我会更新现有产品,特别是如果 ID 是自动编号。但即使您有除此 ID 之外的代理键,我仍然会更新现有产品。将来,您的数据库可能会变得更加复杂,并且您的产品可能会获得几个子表。您不想重建所有这些。

只需更新它们。

于 2012-10-08T20:20:40.733 回答
0

您正在寻找 INSERT ... ON DUPLICATE UPDATE,我猜。见这里

于 2012-10-08T20:43:02.320 回答