Questions tagged «database-design»

数据库设计是指定数据库的结构以及逻辑方面的过程。数据库设计的目的是代表某种“话语世界”-事实的类型,业务规则和数据库要建模的其他要求。




8
MySQL-如何在邮政编码前面加上“ 0”?
在我的MySQL InnoDB数据库中,我要清除的邮政编码数据很脏。 干净的邮政编码数据是指我的邮政编码全5位(例如“ 90210”)。 但是由于某种原因,我在数据库中注意到对于以“ 0”开头的邮政编码,0已被删除。 因此,“ 纽约Holtsville的 ”与邮政编码“ 00544”存储在我的数据库“ 544” 和 “ 戴德姆,MA ”与邮政编码“ 02026”存储在我的数据库为“ 2026”。 我可以使用哪种SQL在长度不为5位的任何邮政编码前面填充“ 0”?意思是,如果邮政编码的长度为3位,则前面板为“ 00”。如果邮政编码的长度为4位,则前面板仅为“ 0”。 更新: 我只是将邮政编码更改为数据类型VARCHAR(5)

12
表命名:下划线与驼峰式?命名空间?单数还是复数?
我一直在阅读有关StackOverflow的几个问题/答案,试图找到“最佳”(或者应该说必须接受的方式)来命名数据库中的表。 大多数开发人员倾向于根据需要数据库的语言(JAVA,.NET,PHP等)来命名表。但是我只是觉得这是不对的。 到目前为止,我一直在命名表格的方式是: doctorsMain doctorsProfiles doctorsPatients patientsMain patientsProfiles patientsAntecedents 我担心的是: 易读性 快速识别表格的来源(医生||患者) 易于理解,防止混淆。 我想阅读有关命名约定的任何意见。谢谢。

26
您如何看待您的主键?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 在我的团队中进行的相当活跃的讨论中,我被认为是大多数人喜欢的主键。我们有以下几组: Int / BigInt哪个自动增量是足够好的主键。 主键应至少包含3列。 id,GUID和人类可读的行标识符都应区别对待。 PK的最佳方法是什么?如果您能证明自己的观点,那就太棒了。上面有没有更好的方法? 编辑:任何人都有一个简单的示例/算法来生成很好地缩放行的人类可读的标识符?

3
MongoDB Schema Design-很多小文件还是更少的大文件?
背景信息 我正在建立从RDBMS数据库到MongoDB的转换的原型。在进行非规范化时,似乎我有两种选择,一种选择导致许多(数百万)个较小的文档,另一种选择导致较少的(数十万个)大型文档。 如果我可以将其简化为一个简单的类比,那将是具有这样的更少Customer文档的集合之间的区别(在Java中): 客户类别{ 私有字符串名称; 私人地址; //每个信用卡都有数百个付款实例 私人Set <CreditCard>信用卡; } 或具有许多付款文件的集合,例如: 类别付款{ 私人客户客户; 私人CreditCard信用卡; 私人Date payDate; 私人浮动工资 } 问题 MongoDB是设计为首选许多文档还是更少的大型文档?答案是否主要取决于我计划运行的查询?(即,客户X有多少张信用卡?vs所有客户上个月平均支付的金额是多少?) 我到处走走了很多,但是我没有发现任何可帮助我回答问题的MongoDB模式最佳实践。

5
为什么数据库总是用圆柱体表示?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 2年前关闭。 改善这个问题 这个问题今天出现了,我找不到关于为什么数据库总是表示为圆柱的任何历史性答案。我希望堆栈世界中的某人会知道为什么,并拥有一个链接或一些支持它的东西。

10
PostgreSQL索引使用率分析
是否有工具或方法来分析Postgres,并确定应创建哪些缺少的索引,以及应删除哪些未使用的索引?我对SQLServer的“探查器”工具有一定的经验,但是我不知道Postgres附带的类似工具。

5
如何在Oracle Database 11g中创建新的架构/新用户?
我已经申请了一家公司的实习生,作为一个问题,他们要求我为具有特定要求的公司创建架构,然后将其发送给DDL文件。我已经安装了Oracle数据库11g Express版,但是如何在Oracle数据库11g中创建新的架构?我已经在网上搜索了解决方案,但是我不知道该怎么办。创建架构后,我应该将它们邮寄到哪个文件?


6
在数据库中存储工作时间
我目前正在尝试找出将业务运营时间存储在数据库中的最佳方法。 例如: 商家A有以下营业时间 星期一:9am-5pm 星期二:上午9点至下午5点 星期三:上午9点至下午5点 星期四:上午9点至下午5点 星期五:上午9点至下午5点 星期六:上午9点至中午12点 周日:休息 目前,我有一个类似于以下内容的数据模型 CREATE TABLE "business_hours" ( "id" integer NOT NULL PRIMARY KEY, "day" varchar(16) NOT NULL, "open_time" time, "close_time" time ) 其中“天”仅限于代码中一周中7天的选择(通过ORM)。为了测试企业是否在某一天关门,它会检查open_time和close_time是否为NULL。它通过中间表(多对多关系)与业务相关。 有没有人对此数据库方案有任何建议?对我来说似乎有些不对劲。


12
SQL Server:表中的最大行数
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加详细信息并通过编辑此帖子来澄清问题。 2个月前关闭。 改善这个问题 我开发了将大量数据存储在其数据库表之一(SQL Server版本8、9或10)中的软件。假设每天大约有100,000条记录插入到该表中。每年大约有3600万条记录。为了避免性能下降,我决定每天创建一个新表(名称中带有当前日期的表)以减少每个表的记录数。 你能告诉我,这是个好主意吗?SQL Server表是否有记录限制?还是您知道在性能大幅降低之前,一个表中可以存储多少条记录(或多或少)?

18
有什么更好的数据库设计:更多表或更多列?
一位前同事坚持认为,一个数据库的表更多,每个表的列更少,比一个数据库的表较少,每个表的列数更多。例如,您将没有名称表,地址表,城市表等,而不是具有名称,地址,城市,州,邮政编码等列的客户表。 他认为这种设计更加有效和灵活。也许它更灵活,但是我没有资格评论它的效率。即使效率更高,我认为增加的复杂性可能会抵消这些收益。 因此,具有较少列的更多表相对于具有较多列的较少表有什么明显的好处吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.