SQLserver数据库设计及开发规范_第1页
SQLserver数据库设计及开发规范_第2页
SQLserver数据库设计及开发规范_第3页
SQLserver数据库设计及开发规范_第4页
SQLserver数据库设计及开发规范_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、LMS项目数据库设计及使用规范在本项目中,数据库的设计和使用必须遵循以下原则:1命名原则1.1约定:Pascal Casing命名方式:1. 每一个单词的第一个字母大写,例如:BankName。2. 常用单词缩写三个字母以下字母都大写,例如:SP、PG3. 常用单词缩写三个字母以上第一个字母大写,例如:Xml1.2表名和字段规则如下:ü 使用英文单词或词组作为表名,不得使用汉语拼音,建立一个中英文对照字典。ü 用名词和名词短语作表名 ü 不使用复数,除非与数据库保留字冲突ü 用Pascal 命名规则ü 尽量谨慎地使用缩写ü 尽量不要和

2、关键字重合ü 不要用任何名前缀 (例如 U,B)ü 数据库对象名称不使用下划线正确的命名,例如:UsersOrderProduct1.3存储过程规则如下:命名规则为up_xxx_StoredProcedureName,up表示User Procedure,用来区分它和系统存储过程,xxx表示子系统的名称,由三个字母构成,各个子系统参见下表,StoredProcedureName为存储过程含义StoredProcedureName规则如下:ü 用动词或动词短语来命名,并带有宾语ü 需要符合用Pascal 命名规则。ü 尽量谨慎地使用缩写ü

3、; 尽量不要和关键字重合ü 不要用任何名前缀 (例如 U,B)ü StoredProcedureName内不使用下划线ü 当操作依赖条件时,一般结尾使用 By+条件存储过程正确的命名,例如:Up_Usr_InsertUserUp_Usr_SearchUserByUserIDUp_Usr_DeleteUserByUserID各个子系统的缩写如下:序号模块缩写英文全名模块名称1usrUser Portal用户、教师门户2BapBusiness Administration Portal业务管理门户3ifcInterface接口子系统4xxxxxxxxx1.4视图规则如

4、下:ü 视图的命名采用vwViewName的格式,其中vw前缀表示视图,ViewName部分表示视图的含义。ViewName规则如下:ü 用名词和名词短语,ü 不使用复数ü 用Pascal 命名规则ü 尽量谨慎地使用缩写ü 尽量不要和关键字重合ü 不要用任何名前缀 (例如 U,B)ü ViewName中不使用下划线视图正确的命名,例如:vwUservwUserOrdervwTranscation视图错误的命名,例如:UserViewvw_Transcation_View2设计规范2.1规范约定遵守数据的设计规范3N

5、F 规定· 表内的每一个值都只能被表达一次。· 表内的每一行都应该被唯一的标识(有唯一键)。· 表内不应该存储依赖于其他键的非键信息。2.2字段规范1. 一行记录必须表内唯一,表必须有主键。2. 金额类型使用Money3. 时间使用 DateTime4. 枚举类型使用 Varchar(2)、Varchar(4),且需要说明枚举类型的各个不同取值的含义,例如 00,01,0000,00015. ID结尾的字段为仅由数字组成,Code结尾的字段为仅由字母或数字组成3使用规范3.1综合1. 数据库的结构只有数据库管理员能够修改,任何开发人员不得自己增加数据库对象或者修改

6、数据库对象。若要修改,需要讨论并将修改请求(含改动的内容和原因)提交数据库管理员。 2. 数据访问层一律使用存储过程访问数据库,不得在.NET程序使用直接的DML语句访问数据库。如果有特殊要求,如对速度有特殊要求等,需要提请数据库管理员批准。3. 不要将业务逻辑都写在存储过程里,尽量使一个存储过程完成单一功能,复杂存储过程可以由多个单一功能存储过程组成,例如,一个存储过程要增加一个表的记录并删除另一个表的记录,这个存储过程可以有两个子存储过程组成。4. 在编写存储过程和.NET数据访问程序的时候,需要通过Query Analyzer分析,确保对数据库的操作使用了有效的索引。5. 如果开发过程中

7、需要建立索引,需要提交书面的更改请求,说明所需索引的定义(名称、字段列表、顺序、索引类型)以及建立的理由。数据库管理员统一维护索引并将提交的请求更改。6. 数据库各表的初始数据(包含各代码表、配置表)需要提交给数据库管理员。7. 尽量不要使用触发器。8. 涉及到数据库数据的更改(Insert/Delete/Update)必须使用事务进行控制,并且必须有完整事务开始和提交/回滚机制。9. 尽量避免Union操作的使用,需要使用时,请向数据库管理员咨询使用Union操作的影响。3.2查询1. 在表查询中,一律不要使用* 作为查询的字段列表,需要哪些字段必须显式写明2. 在表查询中,必须有Where条件,除非此表为非增长表3. 在表查询中,一次最多返回的记录条数不要超过1000条或记录内容不要大于1MB的数据。4. 在表查询中,作Order By排序时,优先使用主键列,索引列5. 多表关联查询时,优先使用Where条件,再作表关联,并且需要保证被关联的字段需要有索引。3.3增加1. 当批量增加时,建议解决的原则:ü 一次性传入数据到存储过程中,然后,拆分再加入表;ü 使用table变量ü 有否使用BCP/Bulk Insert的情况3.4删除1. 删除记录时,必须有Where唯一条件2. 当有主从表时,要先删除从表记录,在删

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论