我无法完全掌握差异.你能描述这两个概念并使用现实世界的例子吗?
database database-design data-modeling identifying-relationship
每当我设计一个数据库时,我总是想知道是否有一种在我的数据库中命名项目的最佳方法.我经常问自己以下问题:
是否有任何建议的指南用于命名数据库中的项目?
database language-agnostic database-design naming-conventions
我正在评估什么是最好的迁移选项.
目前,我正在使用分片MySQL(水平分区),我的大部分数据都存储在JSON blob中.我没有任何复杂的SQL查询(自从我对数据库进行分区后已经迁移过了).
现在,似乎MongoDB和Cassandra都可能成为选择.我的情况:
我遇到过许多NoSQL数据库和SQL数据库.有各种参数来衡量这些数据库的优缺点,可扩展性就是其中之一.水平和垂直缩放这些数据库有什么区别?
请记住,我将在lat/long对上执行计算,哪种数据类型最适合与MySQL数据库一起使用?
我可以在一个表中拥有多个主键吗?
想象一下带有一组复选框的Web表单(可以选择其中的任何一个或全部).我选择将它们保存在存储在数据库表的一列中的逗号分隔值列表中.
现在,我知道正确的解决方案是创建第二个表并正确地规范化数据库.实现简单的解决方案更快,我想快速获得该应用程序的概念验证,而无需花费太多时间.
我认为节省的时间和更简单的代码在我的情况下是值得的,这是一个可辩护的设计选择,还是我应该从一开始就将其标准化?
更多上下文,这是一个小型内部应用程序,实际上取代了存储在共享文件夹中的Excel文件.我也在问,因为我正在考虑清理程序并使其更易于维护.在那里有一些我并不完全满意的事情,其中一个是这个问题的主题.
我厌倦了在每个项目开始时打开Dia并创建数据库图表.有没有一个工具可以让我选择特定的表,然后根据MySQL数据库为我创建一个数据库图表?最好它允许我之后编辑图表,因为没有设置任何外键...
这是我想象的图解方式(请原谅可怕的数据设计,我没有设计它.让我们专注于图表概念,而不是它为这个例子代表的实际数据;)):
我正在创建一个数据库表,并且没有为其分配逻辑主键.所以,我正考虑在没有主键的情况下离开它,但我对此感到有点内疚.我是不是该?
每个表都应该有一个主键吗?
database-design ×10
database ×9
mysql ×2
cassandra ×1
diagram ×1
mapping ×1
maps ×1
mongodb ×1
nosql ×1
primary-key ×1
scalability ×1