我正在为一个绝育/中性诊所建立一个数据库。我想我已经涵盖了所有内容,但想就我的数据库获得第二意见。我们假设有 100,000 多个客户,每个客户都有多只宠物,每只宠物都有多个工作/发票(他们做的不仅仅是绝育/中性)。至少可以说我的 petdetails 表需要处理超过 10,000,000 个条目。如果有更好的方法来优化我的数据库以适应这样一个不断增长的系统,欢迎提出所有建议。我正在考虑使用 MySQL 作为数据库,因为我们希望拥有一个基于 Web 的系统,并且每个托管公司都有。
我使用了一个在线数据库设计工具来帮助构建系统。可以找到以下内容:在线数据库设计器 单击保存/加载->加载(在服务器下)->输入字段:spay/neuter
以下是我的要求:
- “客户”不一定要有“用户”。“用户”必须有一个“客户”。
- “客户”可以有多个“笔记”。“宠物”可以有多个“笔记”。
- 客户可以拥有多只宠物,但每只宠物都有一个客户。
- 一个约会可以有多个“宠物”。约会只是绝育/中性,因此每只宠物只有 1 个“约会”。
- 每个约会都有一个日期/地点。没有具体时间。
- “访问”是宠物在某一天发生的所有事情(类似于商店中的订单)。
- 'services_rend' 和 'goods' 应用于宠物。并且在选择宠物时加载所有内容(“pet_id”值的原因)。
- 多个“医生”可以为一只宠物工作,一只宠物可以在一天内更改“位置”(因此它们被添加到“商品”和“服务撕裂”中
- “项目”是可以应用于宠物的单个项目。项目可以用一系列“子项目”分组。
- “schedule”是客户可以预订“appt”的空缺清单。
- 措辞和代码放在自己的表中,以防以后需要更改。