我正在使用MYSQL存储有关用户订单的数据。使用PayPal,某些订单只有一个交易ID,而其他订单只有一个配置文件ID。对于txn_id和profile_id有单独的字段,根据顺序,其中一个或另一个是否为NULL,是否可怜的数据库设计?字段相关的数据库结构
0
A
回答
1
不,这并不是糟糕的设计。
根据具体情况,您有两种情况,一种是NULL
。当您尝试强制执行时,出现问题的确切原因是NULL
或至少一个不是NULL
。为了有效地做到这一点,您需要使用触发器来检查值。
0
如果总是只有一个ID或另一个,可以考虑有两个字段,一个是id_type
,另一个是id_value
(如果它们具有相同的数据类型)。
这可能会使查询更简单。
0
您有两种基本选择:
- 两个领域,一个是交易,一个用于个人资料都交易和档案,并有另一场,以确定是否
- 的字段是一个Transction ID或个人资料ID
我更喜欢1号(与您的基本相同),因为您保留了字段的正确命名而不是通用命名。除此之外,如果其中一个是NULL
,您总是可以使用COALESCE()
或那种功能来检索不是NULL
。
在这方面,这也意味着,你应该有一个人工主键将不能依赖Transction ID
或Profile ID
。
相关问题
- 1. 数据库结构关系数据库
- 2. 关于数据库结构
- 3. 关注者/关注数据库结构
- 4. 表示数字段的数据结构
- 5. 关于数据库结构的建议
- 6. 关注者的MySQL数据库结构
- 7. DB中的数据结构字段
- 8. 关系数据库和净结构
- 9. mysql数据库结构和关系
- 10. 数据库结构和关系
- 11. 数据库结构 - 存储关系
- 12. 涉及动态字段的数据库结构
- 13. (有点)复杂的数据库结构与简单 - 空字段
- 14. 数据库与14个离散字段 - 结构(SQLite的安卓)
- 15. 使用CakePHP的多字段主键和数据库结构
- 16. 数据库结构
- 17. 数据库结构
- 18. 关于相关功能的数据结构的建议
- 19. 关系的数据结构
- 20. 开关数据结构以字典
- 21. Multilang目录(带自定义字段)数据库结构设计
- 22. 数据库结构/定义和未定义字段值
- 23. CMS的数据库结构
- 24. 模拟关系数据库的Python数据结构
- 25. 关系数据库的高效永久数据结构
- 26. 德州扑克数据的关系数据库结构
- 27. 数据库数据库结构
- 28. 拉关系数据库字段
- 29. MySQL数据库结构中一个字段的数值未知数的表格
- 30. 有关phpMyAdmin表格关系和数据库结构的问题