database - 拆分表

标签 database database-design

我有下表,其中包含有关客户和员工的数据。如果我将它分成 2 个单独的表:Persons 和 Address,会有好处吗?每个人只能有一个地址、电话和手机。我有一个单独的订单表。

我的数据库非常复杂,我想知道这对实现是否有用。

非常感谢, 赞

_______________
Persons        |
_______________|
PersonID       |
FirstName      |
LastName       |
OrderName      |
Email          |
Telephone      |
Mobile         |
StreetAddress  |
City           |
RegionID FK    |
Country        |
PostCode       |
TitleID  FK    |
PersonCat FK   |
MailingList    |
_______________|

最佳答案

仅在出于规范化目的时拆分表:例如,如果一个人可以有多个地址,或者如果少于一定数量的人有一个地址(比如 90%),这将导致大量 NULL 值.

如果不是为了归一化,就不要分表。

关于database - 拆分表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8661117/

相关文章:

mysql - 使用大小写更改值

SQL Server 如何将列值转换为行

sql - 冒号 (':' ) 在 SQL 语法中是什么意思?

mysql - 将记录分布在不同的 MySQL 数据库上 - MySQL Proxy 替代方案

java - 在 Websphere Commerce 的属性字典中删除和重命名属性

postgresql - 如何使用 postgres 从子查询中获取行的关联数组

database - SSIS 连接管理器登录失败

php - 在 Laravel 中将信息添加到数据库而不丢失旧信息

mysql - 日历的表结构 - 基于日期存储数据

mysql - 我应该使用什么 MYSQL 数据类型来存储 64 位 double ?