Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 哪种技术更有效地替换记录_Mysql - Fatal编程技术网

Mysql 哪种技术更有效地替换记录

Mysql 哪种技术更有效地替换记录,mysql,Mysql,我有一个应用程序,必须从远程源导入大量数据。每次通话可输入500至1500条信息 有时,一些传入的数据需要替换数据库中已经存储的数据。如果让我猜的话,我会说每300或400个条目中就有一个需要替换 每个传入条目都有一个唯一的ID。因此,我试图找出始终基于此ID发出delete命令或检查是否已经存在条目然后删除是否更有效 我找到了它谈论数据库删除某些内容所需的繁重工作的地方。但它正在讨论一个不同的问题,所以我不确定它是否适用于这里 每个传入条目都有一个唯一的ID。因此,我试图找出始终基于此ID发出

我有一个应用程序,必须从远程源导入大量数据。每次通话可输入500至1500条信息

有时,一些传入的数据需要替换数据库中已经存储的数据。如果让我猜的话,我会说每300或400个条目中就有一个需要替换

每个传入条目都有一个唯一的ID。因此,我试图找出始终基于此ID发出delete命令或检查是否已经存在条目然后删除是否更有效

我找到了它谈论数据库删除某些内容所需的繁重工作的地方。但它正在讨论一个不同的问题,所以我不确定它是否适用于这里

每个传入条目都有一个唯一的ID。因此,我试图找出始终基于此ID发出delete命令或检查是否已经存在条目然后删除是否更有效


都不是。使用
插入。。。在重复密钥更新时…

因为您使用的是MySQL,并且您有一个唯一的密钥,所以让MySQL来完成这项工作

你可以用
插入到。。。。。重复密钥更新时……

MySQL将尝试在表中插入一条新记录,如果表中存在唯一的值,MySQL将在更新后更新您设置的所有字段

您可以阅读有关插入到..中的
的更多信息。。。。。重复密钥更新时……
语法打开

您是在应用程序级别还是在数据库级别执行此工作?你的应用程序使用什么语言?你使用的数据库是什么?它是MySQL数据库,我使用的是PHP。不知道如何回答你的另一个问题。我正在从我的应用程序进行所有dB调用。一个dB表可以有多个键吗?因为现在我有一个自动递增键。每个项目的唯一ID未标记为键。它可以有任意多个键。此列应为唯一键。