如何避免在数据库中创建新列

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 会将牙医与服务联系起来。