我有三个表项,Invoice和InvoiceItems。当客户发出发票时,他/她可以选择在发票中添加一个或多个项目。
当客户在发票中添加项目时,应该在项目表格中添加一个DataGridView(他可以在保存发票之前添加或删除项目)。最后,当他保存发票,gridview中的项目时,应将它们复制到与发票表具有外键关系的InvoiceItems中。
我很困惑,怎么做。我是否应该使用临时表来存储发票中的临时物品,每次用户发票时我都要清理它(删除其中的所有物品)?
或者我应该在每次用户发票时创建一个新表(用于存储项目),并在退出发票时将其删除?
我正在使用Vb.net和SQL Server数据库。
(请注意,我不会直接在InvoiceItems中存储项目,因为只有在用户保存发票时才会创建发票行,如果用户不在,则在InvoiceItems表中保存项目是没有意义的。在将项目添加到其中后保存发票。)