- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQLserver数据库设计及开发规范
LMS项目数据库设计及使用规范
在本项目中,数据库的设计和使用必须遵循以下原则:
1命名原则
1.1约定:
Pascal Casing命名方式:
每一个单词的第一个字母大写,例如:BankName。
常用单词缩写三个字母以下字母都大写,例如:SP、PG
常用单词缩写三个字母以上第一个字母大写,例如:Xml
1.2表名和字段
规则如下:
使用英文单词或词组作为表名,不得使用汉语拼音,建立一个中英文对照字典。
用名词和名词短语作表名
不使用复数,除非与数据库保留字冲突
用Pascal 命名规则
尽量谨慎地使用缩写
尽量不要和关键字重合
不要用任何名前缀 (例如 U,B)
数据库对象名称不使用下划线
正确的命名,例如:
Users
Order
Product
1.3存储过程
规则如下:
命名规则为up_xxx_StoredProcedureName,up表示User Procedure,用来区分它和系统存储过程,xxx表示子系统的名称,由三个字母构成,各个子系统参见下表,StoredProcedureName为存储过程含义
StoredProcedureName规则如下:
用动词或动词短语来命名,并带有宾语
需要符合用Pascal 命名规则。
尽量谨慎地使用缩写
尽量不要和关键字重合
不要用任何名前缀 (例如 U,B)
StoredProcedureName内不使用下划线
当操作依赖条件时,一般结尾使用 By+条件
存储过程正确的命名,例如:
Up_Usr_InsertUser
Up_Usr_SearchUserByUserID
Up_Usr_DeleteUserByUserID
各个子系统的缩写如下:
序号 模块缩写 英文全名 模块名称 1 usr User Portal 用户、教师门户 2 Bap Business Administration Portal 业务管理门户 3 ifc Interface 接口子系统 4 xxx xxx xxx 1.4视图
规则如下:
视图的命名采用vwViewName的格式,其中vw前缀表示视图,ViewName部分表示视图的含义。
ViewName规则如下:
用名词和名词短语,
不使用复数
用Pascal 命名规则
尽量谨慎地使用缩写
尽量不要和关键字重合
不要用任何名前缀 (例如 U,B)
ViewName中不使用下划线
视图正确的命名,例如:
vwUser
vwUserOrder
vwTranscation
视图错误的命名,例如:
UserView
vw_Transcation_View
2设计规范
2.1规范约定
遵守数据的设计规范3NF 规定
· 表内的每一个值都只能被表达一次。
· 表内的每一行都应该被唯一的标识(有唯一键)。
· 表内不应该存储依赖于其他键的非键信息。
2.2字段规范
一行记录必须表内唯一,表必须有主键。
金额类型使用Money
时间使用 DateTime
枚举类型使用 Varchar(2)、Varchar(4),且需要说明枚举类型的各个不同取值的含义,例如 00,01,0000,0001
ID结尾的字段为仅由数字组成,Code结尾的字段为仅由字母或数字组成
3使用规范
3.1综合
数据库的结构只有数据库管理员能够修改,任何开发人员不得自己增加数据库对象或者修改数据库对象。若要修改,需要讨论并将修改请求(含改动的内容和原因)提交数据库管理员。
数据访问层一律使用存储过程访问数据库,不得在.NET程序使用直接的DML语句访问数据库。如果有特殊要求,如对速度有特殊要求等,需要提请数据库管理员批准。
不要将业务逻辑都写在存储过程里,尽量使一个存储过程完成单一功能,复杂存储过程可以由多个单一功能存储过程组成,例如,一个存储过程要增加一个表的记录并删除另一个表的记录,这个存储过程可以有两个子存储过程组成。
在编写存储过程和.NET数据访问程序的时候,需要通过Query Analyzer分析,确保对数据库的操作使用了有效的索引。
如果开发过程中需要建立索引,需要提交书面的更改请求,说明所需索引的定义(名称、字段列表、顺序、索引类型)以及建立的理由。数据库管理员统一维护索引并将提交的请求更改。
数据库各表的初始数据(包含各代码表、配置表)需要提交给数据库管理员。
尽量不要使用触发器。
涉及到数据库数据的更改(Insert/Delete/Update)必须使用事务进行控制,并且必须有完整事务开始和提交/回滚机制。
尽量避免Union操作的使用,需要使用时,请向数据库管理员咨询使用Union操作的影响。
3.2查询
在表查询中,一律不要使用* 作为查询的字段列表,需要哪些字段必须显式写明
您可能关注的文档
- 2015届西城区期末语文试题.doc
- 2015届原理方法论.docx
- 2015届哲学主观题训练---矛盾观4.doc
- 2015年中美贸易1-9月.docx
- 2015年中考语文模拟试题三.doc
- 2015年中考语文真题精选汇编2015年中考语文试题分类汇编病句辨析与修改(含解析).doc
- 2015年中考语文真题精选汇编名句默写(含解析).doc
- 2015年中考语文真题精选汇编病句的辨析与修改.doc
- 2015年初级会计职称《经济法基础》1(答案).doc
- 2015年安王寨煤矿防治水安全技术措施.doc
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)