我有独特的字段uniq_field表。添加哪种方法比较好 - 首先检查是否存在具有唯一值的记录,或者只需添加记录,mysql会自行检查?mysql独特字段
0
A
回答
2
这取决于你要去采取重复
可能的解决方案的情况下,可以在这样的伪代码显示
switch action
case "do nothing":
INSERT IGNORE
case "delete existing then add new one":
REPLACE INTO
case "update existing":
ON DUPLICATE UPDATE
default:
select first and then apply necessary logic
1
这取决于你想如何在你的代码中处理它。
如果您只是想确保该元素存在,您可以执行所谓的插入 - 重复键更新 - 这意味着如果该行已经存在,则该行被替换 - 但是如果它不存在,则会被更新。
更多关于该主题的位置:http://dev.mysql.com/doc/refman/5.1/en/insert-on-duplicate.html
1
那么该表的作用
+--------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+---------+------+-----+---------+-------+
| id | int(11) | NO | PRI | 0 | |
| unique | int(11) | NO | UNI | NULL | |
+--------+---------+------+-----+---------+-------+
此代码返回false
$result = mysql_query("insert into tab1 values(1, 1), (2, 1)");
echo ($result)?($result):"false";
尽管此代码返回1
$result = mysql_query("insert into tab1 values(1, 1), (2, 2)");
echo ($result)?($result):"false";
看来,如果你想显示的消息,那么你应该在你的数据库检查值并显示错误。如果你不想显示实际造成的错误和错误,那么你可以直接查询。
相关问题
- 1. 更改表字段独特
- 2. INSERT INTO独特的字段
- 3. MySQL独特行
- 4. 索引字段+限制1与性能方面的独特字段比较| MySQL
- 5. 在MySQL中加入时选择独特字段
- 6. 独特的字段从MySQL数据库到PHP
- 7. 玩! - 独特的模型字段
- 8. C# - 2字段DataTable列 - 独特的值
- 9. PHP - 独特的字段不被识别
- 10. Solr独特的多值字段
- 11. Combinationally独特的MySQL表
- 12. MySQL的独特的(多键)
- 13. MySQL的独特和左,右
- 14. MySQL插入独特技术
- 15. 在MySQL中选择独特
- 16. 独特的名字
- 17. 创造独特的合成指数,其中一个字段可以在MySQL
- 18. Mysql选择特定语言的字段
- 19. Mysql LIKE子句和字段中的单独字
- 20. Symfony的嵌入式关系Many2Many - 联独特的字段或创建新字段
- 21. 拟合GUID字段到一个较小的字段而不丢失独特
- 22. 单独的ID字段的单独列?
- 23. 数独统计子字段
- 24. 独特的字段上的外键没有得到的数据
- 25. 果园1.8 - 用独特的字段保存记录
- 26. yii2独特的验证,只有当字段不为空
- 27. 在yii用户模块中创建一个独特的字段
- 28. 自定义复合独特的多列与日期字段
- 29. 添加一个独特的字段并填写它
- 30. SQL Table Join独特的字段命名不同
这取决于你要采取的行动,如果重复 – 2011-03-12 06:54:15
如果DUPLICATE然后没有添加 – kusanagi 2011-03-12 06:58:12