【发布时间】:2012-07-15 16:56:40
【问题描述】:
好的,到目前为止,我有一个存储收据信息的表。
例如:
TABLE receipt
receipt_ID (int)(primary key)
creditcard (int) //Last 4 digits of credit card.
purhcaseAmount (int)
transactionTypeID (int)
remainingBalance (int)
creditCard 列有 4 位数字的限制,因为大多数收据只显示信用卡号的最后 4 位数字。
但是,有些银行会显示前 2 位数字和后 2 位数字,我想将此信息保留到数据库中。
您将如何修改您的数据库设计以适应此业务需求?
【问题讨论】:
-
对信用卡信息要非常小心。即使是部分也可以考虑在 PCI 合规范围内。
-
也许不是最好的方法,但您当然可以将其设为 varchar 并在 4 位数字之前放置一个字符标志。因此,对于最后 4 位数字,它将是 l9999,对于第一个和最后两个 b9999 或您想要的任何字符。这只是我的第一个想法。
标签: sql database-design normalization