我想问一下表格的设计是基于它在Grid View中的可编辑性。让我解释。例如,我有一个名为ProductCustomerRel的表。GridView编辑问题如果主键是可编辑的(设计问题)
方法1
CustomerCode varchar PK
ProductCode varchar PK
StoreCode varchar PK
Quantity int
Note text
所以CustomerCode的组合,商店代码和产品代码必须是唯一的。记录显示在gridview上。要求是您可以编辑客户,产品和商店代码,但是当保存数据时,PK约束必须仍然存在。
这里的问题是很自然的一个网格,能够编辑3主键,你只能通过先删除行,然后用更新的数据插入行实现网格视图的更新操作。
另一种方法是只更新表格并添加一个SeqNo,并且在网格视图中插入和更新时只强制执行3列的唯一约束。
方法2
SeqNo int PK
CustomerCode varchar
ProductCode varchar
StoreCode varchar
Quantity int
Note text
我的问题是这两种方法的比较好?还是有另一种方法来做到这一点?