小编gia*_*kis的帖子

跟踪表上的更改

我有一张users桌子。我想跟踪我所做的所有更改,姓名,电话等。我想创建一个额外的表changes来存储用户的id上一个和下一个版本。我保留所有users记录。这是一个好方法吗?

历史

更新

我也想过使用单独的表来记录历史,见下文

分开的历史

或者,使用单个表并从timestamp或跟踪其版本id(因为它是增量),但我认为这是一个糟糕的解决方案。

在此处输入图片说明

database-design

6
推荐指数
1
解决办法
1864
查看次数

WHERE 中的条件与 CONNECT BY 中的条件

谁能向我解释以下两个查询之间的区别?尽管它们看起来相同,但结果却不同。

select concept.concept_id, concept.PARENT_ID 
from ebti_thes_concept_v concept
  start with PARENT_ID = '11025'
  connect by parent_id = prior concept_id
  and exists (..) 
Run Code Online (Sandbox Code Playgroud)

在第二个中,exists谓词从connect by子句移动到where子句。

select concept.concept_id, concept.PARENT_ID
from ebti_thes_concept_v concept
where exists (..)
 start with PARENT_ID = '11025'
 connect by parent_id = prior concept_id;
Run Code Online (Sandbox Code Playgroud)

oracle hierarchy where

5
推荐指数
1
解决办法
2585
查看次数

约束关系

我有以下设计。每个用户都有它自己的联系人,它自己的主机并将它们分配给一个只属于他的

我想确保您分配给主机属于该分配给的用户

这是我必须在我的应用程序逻辑中确保的东西吗?

如果我设置domains.user_id foreign key为参考host.user_iduser_id.id它会消除我的问题吗?

在此处输入图片说明

顺便说一句,谁能建议我为我的架构设计更好的设计?

mysql schema database-design constraint

3
推荐指数
1
解决办法
218
查看次数

标签 统计

database-design ×2

constraint ×1

hierarchy ×1

mysql ×1

oracle ×1

schema ×1

where ×1