1

In my database I need to create one table which will contain temporary data, and later on part of that data will be deleted. That table will contain IP column. The problem is that I store IP in other table already, and its referenced in many other tables. So if I create foreign key constraint in my new table (the one which will contain temporary data) and delete row later on, I will have unuseful IP-s in original table if the new column has foreign key reference.

Table1 columns:

  IP,
  Col1

Table2 columns:

  IP,
  Col1,
  Col2

So my question is, Is it a good approach to create columns without foreign key reference when needed? Is it ok db design not to create foreign key reference in Table2 for IP column?

4

2 回答 2

0

在某些情况下,可以在没有 FK 引用的情况下创建列,但您可能面临的问题是,由于没有约束,您可以从一个表中删除数据并在另一个表中拥有孤立记录。

此外,没有什么可以强制您在一个表中输入的数据也存在于另一个表中。

这里的主要问题是,虽然您将 IP 存储在其他表中,但您是否需要使用 IP 列将新表连接到现有表?如果不是,那么您对 ​​FK 没有用处。

于 2013-10-18T16:09:13.163 回答
0

我假设您使用一个表来存储会话数据,并使用另一个表来更永久地存储有关 IP 的数据。

您可以使用会话表中的 IP 作为该表的外键,其中包含有关 IP 的更多信息。如果您想查询有关当时正在使用您的应用程序的所有人的信息,这将非常有用。

于 2013-10-18T16:08:34.247 回答