解读ASP.NET TimeTracker Starter Kit(1)——数据库篇

初步了解了 ASP.NET Portal Starter Kit 后( 我以前的文章 ),本来想继续重构代码的。在构思的时候想到要是能把五个入门套件结合在一起不是更好。 Time Tracker (时间管理或项目追踪)是利用微软的 Data Access Application Block 作为数据库访问层的,我正好也要这样做,所以就先来看看 ASP.NET Time Tracker Starter Kit
ASP.NET Time Tracker Starter Kit (项目追踪入门套件),提供项目成员(顾问)于每一项项目中各类别所花费的时间,加予统计分析,相当于项目的「项目成员工时记录卡」。详细介绍可参见微软网站上的一片 文章 。像解读门户网站入门套件一样,还是先从数据库说起。
数据库中的表:
TT_Categories 项目目录信息
字段名 类型 含义 备注
CategoryID Int 目录Id 主键(自动编号)
ProjectID Int 所属项目Id 关联项目信息表
Name Nvarchar(50) 目录名称  
Abbreviation Nvarchar(4) 简写  
EstDuration Decimal(9) 预计持续时间 小数位两位(单位:小时)
 
TT_EntryLog 项目成员工时记录卡
字段名 类型 含义 备注
EntryLogID Int 记录Id 主键(自动编号)
Description Nvarchar(255) 工作描述  
Duration Decimal(9) 完成工时 小数位两位
EntryDate SmallDatetime 记录日期  
ProjectID Int 所属项目Id 关联项目成员表
UserID Int 所属用户Id
CategoryID Int 所属目录Id  
 
TT_ProjectMembers 项目成员表(通过此表可以反映:一个用户可以同时参与多个项目,一个项目也可有多个用户参与)
字段名 类型 含义 备注
ProjectID Int 项目Id 关联项目信息表
UserID Int 项目成员Id 关联用户信息表
 
TT_Projects 项目信息表
字段名 类型 含义 备注
ProjectID Int 项目Id 主键(自动编号)
Name Nvarchar(50) 项目名称  
Description Nvarchar(1024) 项目描述  
ManagerUserID Int 项目经理Id 关联用户表
EstCompletionDate Datetime 预计完成时间  
EstDuration Decimal(9) 预计持续时间 小数位两位(单位:小时)
CreationDate Datetime 创建事件 默认值:getdate()
 
TT_Roles 角色信息表
字段名 类型 含义 备注
RoleID Int 角色Id 主键(自动编号)
Name Nvarchar(50) 角色名称  
 
TT_Users 用户信息表
字段名 类型 含义 备注
UserID Int 用户Id 主键(自动编号)
DisplayName Nvarchar(50) 用户姓名  
Password Nvarchar(50) 密码 采用MD5的加密方式存储
UserName Nvarchar(50) 登录名(用户Email 用于登录,并设置成唯一性索引(可防止注册相同的Email,这样设置后当有相同的Email插入时程序就会抛出异常,捕获这个异常就可判断Email是否重复,这样就可以省掉判断Email是否重复的代码
RoleID Int 角色Id 关联角色信息表(TT_Roles
 
数据库中的存储过程: (自带的文档中有详解,不赘述)
 
各表关系:
        Time Tracker 中的各数据表中的关系不同与 Portal ,各表之间有很强的约束关系。在完整性约束上面做的比较好。从各表中的关系上来看,是符合数据设计第三范式的。   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值