主键数据库

时间:2018-03-12 10:01:49

标签: database database-design

我们如何在包含银行贷款/账户交易数据的数据库中定义主键。

例如 - 如果我将主键作为帐户号码 - 同一帐户号码可能有多行(交易)。

2 个答案:

答案 0 :(得分:0)

我有一个类似的问题,但找不到令人信服的答案。 银行交易没有明显的主键。没有您可以使用的ID。甚至没有公开可用的标准,我也找不到……。

但是后来我在想,我有以下选择:

  1. i可以将日期和序号与交易列表一起使用以构建类似以下的键:

    [('2019-01-01', 1), ('2019-01-01', 2)]
    ['2019-01-01_000001' '2019-01-01_000002)]

  2. 并另外处理余额并创建某种哈希或仅哈希日期ordinal_number余额以形成哈希。有严厉的选择。

毕竟,我使用('2019-01-01', 1)并另外创建了一个哈希,并将其缩短为5位数字。

目前它可以正常工作,并且交易号和序号永远都不应更改,否则我可能想更改我的银行,尤其是当余额也随后更改时:-D。

您甚至可以每天进行几次更新,并只处理数据库中尚不存在的事务。

答案 1 :(得分:-2)

使用自动递增列作为主键。