数据库表重构

时间:2009-01-08 00:24:44

标签: sql sql-server database nhibernate

您好我正在使用ms2005进行简单的日历系统。 我们有三个“遗留”表:组,单位和员工。

我需要为表中的每条记录提供一个唯一的标识符(包含所有3个表)。

最好的方法是什么?我正在使用NHibernate,并且想知道是否可以为我做这件事。

无论如何,任何正确方向的点头都非常赞赏。

2 个答案:

答案 0 :(得分:1)

通常的做法是使用带有IDENTITY(1,1)的int在每个表上创建一个代理主键。

如果您需要跨系统的唯一值,请使用UNIQUEIDENTIFIER列(GUID)。

答案 1 :(得分:0)

您是说同一个标识符不应出现在多个表中?这将是一个可疑的断言,表明需要进行更多的讨论。

在重构意义上,这将是一个“坏气味”。