欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

关于[一个基于WF的业务流程平台]表设计的说明

发布时间:2023/12/18 编程问答 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 关于[一个基于WF的业务流程平台]表设计的说明 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

 

 

数据库的主键设计说明

在我发布的例子 一个基于WF的业务流程平台 中,

 

N12345B 问到

//

所有的数据结构都几乎使用了Guid这一数据类型作为ID,而这个ID的作用仅仅作为流水号吗?所有表之间的关系都并未用到这一ID标识,而使用的是 xxxNo之类的

//

 

在这里,我对这个Guid的使用原因说明一下

为什么为每个表都加一个Guid列

这是因为我要处理并发,说明如下:

使用了Guid列,是为了让每条记录在全开库有一个唯一标识,

 

我通常会在内存中根据需要维护这样一张表

 

Guid

UserID

State

76C43F0D-F39E-458b-9E40-D4D70703FF2E

001

 

76C43F0D-F39E-458b-9E40-D4D70703FF2E

002

 

76C43F0D-F39E-458b-9E40-D4D70703FF2E

003

 

 

当用户[001]查询某条记录时,如果他选中[他人修改后立即通知我],选项时.

服务器端会将该用户查询的记录的Guid与UserID添加到上面的表中.

 

当某条记录被修改后,系统会到上面的表中查找该记录的Guid是否被注册,如果被注册,则向对应的UserID发一通知.

 

当然,这只是这个Guid的一个应用,我在做并发修改仲裁时,也用这个Guid,关于这方面,我以后专门写一篇文章介绍

 

为什么Guid列要做主键

先鄙视一下自已的懒惰(^_^)

 

在使用Linq To Sql时,表要的主键,主键不能修改,所以我就用Guid做主键了,而业务主键就让我做成了唯一键

 

 

转载于:https://www.cnblogs.com/foundation/archive/2009/02/11/1388722.html

总结

以上是生活随笔为你收集整理的关于[一个基于WF的业务流程平台]表设计的说明的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。