如何避免在数据库中创建新列
how to avoid creating new columns in database
我有 table 牙医和服务。我希望它是动态的,所以我添加了“添加服务”功能。但是如果服务还没有定义,我该如何规范化呢?因为我还没有添加。
我所做的解决方案是我创建了一个新的 table,它是我每次添加新服务时都会创建新列的专长。但我不知道在添加服务功能本身中创建一个新列是否非常不合适。但这是我认为的唯一方法。有什么办法可以解决吗?
动态列一点都不好!
表应该是静态的才可靠。
改用关系-tables。
例子
你有一个 dentists
table。它有一个 id
列作为主键。
创建 services
table。当然它应该有一个主键。除此之外,放一个 dentist_id
列。这将在 dentists
table.
中包含牙医的 id
如果您提供更多信息和代码或数据库架构,我们也许能提供更多帮助。
编辑
正如 ADyson 提到的,如果有可能多个牙医在一项服务上工作,则建立多对多关系。
例子
你有一个 dentists
table 和一个 services
table。它们都有一个 id
列作为主键。
创建 r_dentist_service
table。当然它应该有一个主键。除此之外,放一个 dentist_id
列和一个 service_id
列。这些应该包含各自的 ID。 table 会将牙医与服务联系起来。
我有 table 牙医和服务。我希望它是动态的,所以我添加了“添加服务”功能。但是如果服务还没有定义,我该如何规范化呢?因为我还没有添加。
我所做的解决方案是我创建了一个新的 table,它是我每次添加新服务时都会创建新列的专长。但我不知道在添加服务功能本身中创建一个新列是否非常不合适。但这是我认为的唯一方法。有什么办法可以解决吗?
动态列一点都不好! 表应该是静态的才可靠。
改用关系-tables。
例子
你有一个 dentists
table。它有一个 id
列作为主键。
创建 services
table。当然它应该有一个主键。除此之外,放一个 dentist_id
列。这将在 dentists
table.
id
如果您提供更多信息和代码或数据库架构,我们也许能提供更多帮助。
编辑
正如 ADyson 提到的,如果有可能多个牙医在一项服务上工作,则建立多对多关系。
例子
你有一个 dentists
table 和一个 services
table。它们都有一个 id
列作为主键。
创建 r_dentist_service
table。当然它应该有一个主键。除此之外,放一个 dentist_id
列和一个 service_id
列。这些应该包含各自的 ID。 table 会将牙医与服务联系起来。