SQL怎么实现
我想做一个入库单,A用户录入一部分数据,B用户进行审核,并录入一些相关其它信息,而C用户看到B用户审核之后,方可录入另外一些信息。 
 B用户审核后的数据,A用户不可修改;C用户审核的数据,B用户也不可修改。   
 这样我的表需要怎么设计呢? 
 是做一个表,还是多个表? 
 然后当B用户要审核A用户的数据时,如何防止A用户同时进行数据更新而发生未知的错误呢? 
 一个入库单,可能有多条记录。我在程序编制中,如何有效控制呢?
------解决方案--------------------做一个表吧,设置一些标志,当B用户审核后修改其对应的标志的值,同理,C也一样。
------解决方案--------------------数据库的表结构设计是根据实体来划分的。 
 审核等判定逻辑是交给业务层处理的。 
 lz这样来设计的话,不太好。
------解决方案--------------------同意 
 Melody_1208() ( ) 信誉:100    Blog   加为好友    
 不用想那么复杂,加个标志字段 flag 
 A只能看见   select * from test where flag= 'A '  提交后变成B(页面的程序中写update) 
 B只能看见   select * from test where flag= 'B '  提交后变成C(页面的程序中写update)   
 看不见也就没有修改的问题了 
 或者能看见,但是如果修改的时候判断flag是否等于  当前用户的权限(A,B,C) 
------解决方案--------------------如果没有越级审核加一个标志字段就行 
------解决方案--------------------这个问题不需要通过数据库来设计, 
 属于完全的思路问题, 
 可以通过逻辑来完成你的要求,而不是通过控制数据库表来实现   
------解决方案--------------------表可以正常创建,另外加一个状态标志列。用来保存记录状态。 
 状态列取值范围如下(假设) 
 0 表示新保存数据 
 1 表示第一级人员审核 
 2 表示第二级人员审核 
 在程序中根据这些状态值不同。判断哪些人可以使用数据。
------解决方案--------------------一个单据可能包含多个记录,如制单的人准备修改,将数据读取,而单据被审核了, 
 制单的人保存数据不是会出错? 
 ================================ 
 制单的人准备修改,标志位重新清空,B要等到A修改完毕,修改完毕后标志位重置后才能修改。
------解决方案--------------------网络故障 
 A已修改,标志位未清空.B会发现无法审核,修改标志位,后继续审核。 
 没那么巧得把...你担心什么那 
------解决方案--------------------给审核加一个标志字段,字段的值(0、1、2、......),用户对于数据的修改权限在程序中根据这些状态值不同实现。
------解决方案--------------------表中加一字段作为是否审核的标记