相关疑难解决方法(0)

发票,发票行和修订的数据库设计

我正在设计特许经营CRM(具有大量重构)的关系数据库的第二次主要迭代,我需要有关存储工作发票发票行的最佳数据库设计实践的帮助,并对每个更改进行强有力的审计跟踪发票.

当前架构

Invoices

InvoiceId (int) // Primary key
JobId (int)
StatusId (tinyint) // Pending, Paid or Deleted
UserId (int) // auditing user
Reference (nvarchar(256)) // unique natural string key with invoice number
Date (datetime)
Comments (nvarchar(MAX))
Run Code Online (Sandbox Code Playgroud)

InvoiceLines

LineId (int) // Primary key
InvoiceId (int) // related to Invoices above
Quantity (decimal(9,4))
Title (nvarchar(512))
Comment (nvarchar(512))
UnitPrice (smallmoney)
Run Code Online (Sandbox Code Playgroud)

修订方案

InvoiceRevisions

RevisionId (int) // Primary key
InvoiceId (int)
JobId (int)
StatusId (tinyint) // …
Run Code Online (Sandbox Code Playgroud)

sql-server database-design invoices

43
推荐指数
2
解决办法
5万
查看次数

标签 统计

database-design ×1

invoices ×1

sql-server ×1