【发布时间】:2015-12-18 03:40:01
【问题描述】:
我的数据库有 master 表前缀为 mt_ 和 transactions 表前缀为 tr_ 。但是当我浏览数据库时,我开始想知道事务表和主表的实际定义是什么。据我了解,事务表应该有一个复合主键(主键由其他表的两个或多个 PK 组成)。但是当我查看数据库中的事务表时,有些表具有前面提到的复合键,它也有标记为 tr_ 但只有一个键标记为 PK 的表,它们也有属于其他表的 PK 键,但它们甚至没有被标记为 FK...
那么这里有人能解释一下主表和事务表之间的区别以及如何在数据库中识别它们吗?
更新 这是我的数据库的一个例子
tr_orders
OrderId int PK
CustomerId int Fk
OrderDate datetime etc
tr_reciept
RecieptId int PK
OrderId int **(but not FK)**
PaindAmount money
recieptDate datetime
以下是完整的两张表的表结构:
tr_orders
tr_reciept
我不明白为什么这些表是 tr 表?
【问题讨论】:
-
一般来说,事务表中有一个日期,通常是一个数值。它通常包含一个或多个主表的外键。 PK 应该定义表的唯一性,该表可能是也可能不是主表的唯一组合。通常不会,尤其是在涉及日期的情况下。
-
@Nick.McDermaid 可以给我举个例子吗?
-
“交易”一词非常宽松。但我可以试一试
-
@Nick.McDermaid 如果我能看到一个样本,那就太好了,因为我拥有的数据库没有一致性......
-
我已经发布了一些信息,但如果您更详细地描述一些表格会有所帮助。
标签: sql-server database sql-server-2008 sql-server-2008-r2