database - MySQL Insert in table if it doesn't exist if it does not already ¿我做得对吗?

标签 database mysql

在使用关系表构建我的应用程序时,我遇到了以下问题:

我有下表,对于这个名为“valores”的例子:

-----------------------
| id  |     value     |
-----------------------
|  1  |  Unique VAL   |
|  2  |  Unique VAL2  |
-----------------------
ID = AUTOINCREMENT
VALUE = UNIQUE

我想做的是插入一个新值(如果它不存在),我现在这样做的方式是:

INSERT IGNORE INTO valores (id, value) VALUES (NULL, "Unique VAL2");

所以它不会做任何事情。因为值(value)已经存在..现在我的问题是:

¿这是最好和最快的方法吗?

最佳答案

我认为这是适合您的场景的最佳方式。

对于不同的目的,您可以使用 ON DUPLICATE KEY UPDATE 或 REPLACE INTO

阅读更多:insert , replace , on duplicate .

关于database - MySQL Insert in table if it doesn't exist if it does not already ¿我做得对吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1179113/

相关文章:

php - 如何使用 PHP 和 Ajax 将表单数据插入 MySQL 数据库表中?

java - Hibernate 和 Postgresql 负主键 id 问题

sql - 从表中删除重复记录

java - Amazon EC2 意外停止工作

mysql - 在数组中搜索 JSON 数据类型的对象属性时出现问题

php - 使用多个类别和条件进行搜索

PHP 在 MYSQL 数据库中插入两个重复的行

.net - 如何为基于 SQL Server 服务的数据库设置密码?

database - 应用程序启动时,Mnesia disc_copies 表如何存储在 ram 中?

php - 当数据库已经包含数据列时,如何从表单将数据输入到mysql数据库中?