我的问题是,我如何将存储在Log
表中的引用链接到另一个数据库中的一段数据?通用数据库日志系统:存储对另一个database.table.column的引用
我们正在构建一个系统(调用Fusion),它将为我们所有其他系统执行某些关键任务,其中一个是日志记录。
这个想法是,任何其他系统将能够使用Fusion来记录特定的操作。
CREATE TABLE [Log]
(
[LogID] [int] IDENTITY(1,1) NOT NULL,
[UserID] [int] NOT NULL,
[LoggedOn] [datetime] NOT NULL,
[ReferenceID] [int] NOT NULL,
[ReferenceLocation] [varchar](250) NOT NULL
)
所以在简化表设计ReferenceID
列将存储从另一个数据库列的外键的上方。因此来自新闻数据库的StoryID或来自个人数据库的PersonID。
然后,ReferenceLocation
将存储ReferenceID
列的database.table.column位置。
这个想法是可以写入SQL查询(使用动态SQL或其他方法),以便在查询Log
表时可以返回每行的引用数据。
这是要做到这一点吗?有没有更好的办法?我们是否应该重新考虑一般背后的推理?
我已经对足够多的“融合”和“凤凰”项目名称进行了研究,他们已经成为“失败”的代名词。 – Joe 2009-11-09 17:58:01
翻转那个皱眉:) – 2009-11-10 09:37:14
乔,系统的名字对于答案是非常重要的。这是关键元数据,应该是所有问题的必需字段。 – 2011-02-07 22:31:47