我正在为一个绝育诊所建立一个数据库。我想我已经解决了所有的问题,但我想从我的数据库方面获得第二种意见。我们假设有100,000+客户端,每个客户端有多个宠物,每个宠物有多个工作/发票(他们所做的不仅仅是spay/中性)。至少,我的petdetails表需要处理10,000,000多个条目。如果有更好的方法来优化我的数据库为这样一个不断增长的系统,欢迎所有的建议。我正在考虑使用MySQL作为数据库,因为我们正在寻找一个基于网络的系统,每一个托管公司都有。
我使用了一个在线数据库设计工具来帮助构建系统。可以找到以下内容:联机数据库设计器单击保存/加载->负载(服务器下),将->输入到字段:spay/中性
以下是我的要求:
发布于 2013-07-18 00:26:28
这似乎本质上是一个简单的兽医病人关系管理应用程序,您正在构建,与预约,服务提供和计费功能。
模式的一些审查要点:
usersclients为1:1,则将它们折叠到一个表中。如果客户端不能有用户,或者客户端可以有多个用户,则联接是合法的。petsday所代表的将被称为访问,而petdetails所代表的将是以病案术语提供的服务。petsdayid不属于pet。如果您希望能够检索给定pet的“当前”pet,请查找它。petsday和petdetails之间的外键:一次访问可能需要提供多个服务,而不是相反。petid在petdetails中是异常的;除非性能需要,否则删除它。codes和options与任何东西都没有关联。这对于options来说是可以理解的,但是我建议将codes分解成多个结构相同的表,每组代码都有一个:诊断、服务等等,这样就可以构造外键来维护代码类型的安全性。petdetails划分为两个表,一个用于服务(服务代码为外键),另一个用于商品(以项为外键),它们之间共有字段的子集。https://stackoverflow.com/questions/17712267
复制相似问题