




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
sqlserver,索引命名规范篇一:SQL+Server 命名规范SQL Server 1 1命名协定 数据库命名原则及版本控制 数据库命名原则 数据库命名要遵从以下命名原则: 表意性原则:数据库命名本着表意性原则,即命名应尽量反映存储/action/view/column 的数据内容。 长名原则:很少使用或者不使用缩写,适用于 DB 命名之外的任一对象 数目最少化原则:数据库对象应该尽量满足数据最小化原则,也就是数据库数目,存储过程,视图等数量最小化。 数据库版本控制 当由于多个版本的应用系统同时存在或者是其它特殊原因而使用完成相似的功能的对象存在同时存在时,使用版本控制:版本号在对象名的后面加上_v1 如: Up_IM_DailyUsageStatsUpdate_v2 Up_IM_CustomerGetUsingLastName_v2 Server/命名实例的命名 基于 Domain 命名, DOMAIN 的粒度,可分为三级 ,分别是 Server 级别,Database 级别和表的前缀级别。此为第一级别。 1 ONLINE PRODUCTION SERVER NEWSQL NEWSQL2 EHISSQL WAREHOUSE PRODUCTION SERVER 2 S3SQL01S4SQL01 S7SQL01 S6SQL01 数据库命名 数据库命名应当遵从上面所提及到的协定,包括没有特殊的字符,使用文字数据字式字符?,项目代码命名不应该同样被数据库使用.数据库名字应该唯一以避免冲突等.以 Domain 来标识, 拆分 DATABASE,基于大的逻辑范畴,如 operation 范畴以及部门类别,另外:其它与部门相关的 DATABASE 可以放到相关的 SERVER 下。 ? 数据库数目最少化原则 ? 数据设置尽可能 MERGER 原则 ? peration database AND Dept level Database set up rules ? 拆分 DATABASE,基于大的逻辑范畴,如operation 范畴以及部门类别 ? 其它与部门相关的 DATABASE 可以放到相关的SERVER 下。 ? 下面为与 OPEARATION 相关的 DATABASE 示例: 如: 下面为与 OPEARATION 相关的 DATABASE: ItemProfile Inventory Codecenter CustomerProfile SalesOrder 3 AccountingSevice(RAM) eCommerce SupplerChainManagement DropShip SerialNumber WorkFlow ShippingCarrier WarehouseManagment HumanResource ? 其它与部门相关的 DATABASE 可以放到相关的SERVER 下。 MKT Pm Mis CUSTOMER SVR ADMIN ACCOUNTING 2. INTERNAL DEPT DATABASE SERVER 数据库对象表,视图,列名,约束,规则,默认值 数据库对象应该被清晰的命名,要确认不存在歧义。数据库对象的名字应该包括自己尽可能多的信息,并要详细的说明与之相对应的项目文档.选择合适的命名空间是一个很让人困惑的问题(比如我们不能从一个存储过程的命名上看到是哪个项目在使用这个对象) ,命名名字唯一的在数据库级别标识自己,无论在哪儿使用它,请确保在一个项目中命名方法的一致.在一个小的上下文 4 看来很清晰的对象在一个大的上下文中可能就会丢失他的含义.节省击键次数永远不能用来作选择名字的标准.下面供述了数据库对象的命名协定,所有的数据库对象命名都应该遵循下面协定. ? 如果不是长度限制,缩写应该被避免.当使用缩写时应该遵从下面的缩写规范的规则.缩写应该在项目范围内保持一致并被存档. ? 不要使用特殊的字符;对文字数字式字符加以限制. ? 在命名时为了更好的标识表与应用程序之间的关系,我们要使用“function name|main module name表名”的形式. 比如: Newegg_customer Blocked_customer Abs_customer EDI_ MDF_ ? 当要修改一个对象的架构时,首先要确认与之存在依存关系的对象不受影响.要查看与之存在依存关系的对象,可以在企业管理器中”右键相应对象”-”ALL TASKS”-”DISPLAY DEPENDENCIES”来查看或者使用系统存储过程SP_DEPENDS 来查看: EXEC SP_DEPENDS ? 当底层表结构更改时,视图都应该被重新创建.这个应该特别被注意,特别是视图是使用如”SELECT * FROM table”时. ? 强烈建议任何时候都不要使用类似于”SELECT * FROM”的语句. ? 当在不存在事务上下文中或者是完整性要求不是很高时,在 SELECT 语句中使用 WITH NOLOCK. 缩写规范 由于长度的限制而需要使用缩写时,应当遵从以下的规则: ? 以分类单词作为名字的起始. 5 篇二:MS SQL Server 命名及编码规范MS SQL Server 命名及编码规范 文件类型:项目管理(标准/规范/模板) 文件编号: 版 本: A 版权声明 本文件版权属于 XXXXX,保留所有权利。 本文件中包含的信息属于 XXXXX 的资产及机密,文件中的任何部分未经授权不得以任何形式复制(包括复印及以电子文本的形式传播)。 B 版本历史 C 分发范围本文档分发范围包括:XXXXXX 管理人员、开发人员、项目管理人员。 1 编写目的 编写本文档的目的是在使用 MS SQL Server 数据库的过程中,使用统一的命名和编码规范,使数据库命名及编码风格标准化,以便于阅读、理解和继承。 2 适用范围 本规范适用于公司范围内所有以 SQL SERVER XX/XX 作为后台数据库的应用系统和项目开发工作。 3 对象命名规范 通用规则 Pascal 规则 每个单词开头的字母大写(如: TestCounter)。 Camel 规则 除了第一个单词外的其他单词的开头字母大写. 如:testCounter。 Upper 规则 仅用于被广泛认可的缩写命名(一般不超过四个字符,超过四个字符长度应该应用 Pascal 规则) 。如:OLAP、PIN。 数据库名 数据库名定义为系统名_模块名,如“crm_customer” 表示 CRM 系统的 customer 处理模块数据库。 数据库名全部采用小写。 数据库文件数据文件命名采用数据库名+_+文件类型+文件序号+文件后缀,文件序号为 1、2、3?9 等数值,当数据库中某一文件类型的文件有多个时加上文件序号以区别。只有一个时可不加。 文件后缀:主数据文件为.mdf,其它数据文件为.ndf,日志文件为.ldf。 文件名全部采用小写。 比如系统名为“crm_customer”,则数据库数据文件命名为“crm_customer_” ,日志文件命名为“crm_customer_”。 表 表命名要遵循以下原则: ? 直接使用表义名,不使用任何前缀。 ? 整个表名的长度不要超过 30 个字符。 ? 表义名需遵循表述的规则,尽量以英文命名,也可使用汉语拼音的首字符命名。表义名中汉语拼音均采用小写,且字符间不加分割符;单词命名的表义名采用名词性质的单词,各单词的首字符大写,其它字符小写。多个单词间不加任何分割符,如果整个单词太长,则使用完整的第一音节或经过仔细选择的缩写词。名词全部采用单数形式。 ? 表别名取表义名的前 3 个字符加最后一个字符。 ? 如果存在冲突,适当增加字符(如取表义名的前 4 个字符加最后一个字符等) 。 ? 关联表命名为“Re_表 A_表 B”形式,Re 是Relative 的缩写,表 A 和表 B 均采用其表义名或缩写形式。属性(列或字段) 属性命名遵循以下原则: ? 采用有意义的列名,尽量使用英文,或有实际含义的汉语拼音的首字符,且字符间不加任何分割符。 ? 如果字段为 bool 型,则使用“IsShow“, “IsValid“, “HasPassed“, “HasExamined“, “IgnoreCase“这种形式表示。 ? 如果字段位 DateTime 型,切且默认值是取系统时间,一律命名位:CheckDate。 ? 属性名前不要加表名等作为前缀。 ? 属性后不加任何类型标识作为后缀。 ? 关联字段命名以 “cd+_+关联表的表义名(或缩写)+_+字段名”进行 主键 任何表都必须定义与业务无关的自增形式的键值,一律命名为 ID。 表主键命名为“表名+ID”,如 Customer 表的主键命名为 CustomerID。 外键 外键名称为主表名+对应列名,如 在表 Department 中,其字段有:ID, DepartmentName 在表 UserInfo 中,其字段有:UserId,UserName,DepartmentsID 其中,DepartmentID 为外键,参照 Depertment 表的 ID 字段。 索引 索引的命名为:“idx_表名(或缩写)+_+列名” 。 其中多单词组成的属性列列名取前几个单词首字符,加末单词组成,如 Customer 表中字段 LastName 上的索引可命名为 idx_Customer_LastName。 Default 标识 由“df+_+”组成。 Rule 标识 由“ru+_+”组成。 自定义数据类型 自定义数据类型由“ud+_+_+”组成。 触发器? AFTER 型触发器 系统名+tr_+_+,其中 i,u,d 分别表示insert、update 和 delete。 ? INSTEAD OF 型触发器 系统名+ti_+_+,其中 i,u,d 分别表示insert、update 和 delete。 视图 视图命名由 v_+表名+描述,如 v_Customer_Top100。 存储过程 存储过程命名由“usp+_+存储过程标识”组成。 存储过程标识要以实际含义的英语单词或以动宾的形式构成,并用下划线分割各个组成部分。对于在某个表上进行操作的存储过程可以 命名为“usp_表名_操作”方式,如在 Customer 表上进行插入操作的存储过程命名为usp_Customer_Insert。 函数 函数命名由“ufn_+函数标识”组成。 变量名 ? 变量命名采用 Camel 规则,使用有明确说明性的名字。 角色 全部使用小写字符命名。 由“系统名称+_+role+_+名词(或缩写)或名词短语(或缩写)”组成如用电系统的查询角色:yd_role_query。 篇三:SQLServer 数据库设计命名规范SQLServer 数据库设计规范 1 相关的设计规范 采用有意义的字段名 尽可能地把字段描述的清楚些。当然,也别做过头了,比如 CustomerShippingAddressStreetLine1 虽然很富有说明性,但没人愿意键入这么长的名字,具体尺度就在你的把握中。每个单词的首个字母要求用大写!不要用下划线来连接每个单词。 遵守 3NF 标准 3NF 规定: A.表内的每一个值都只能被表达一次。 B.表内的每一行都应该被唯一的标识(有唯一键)。 C.表内不应该存储依赖于其他键的非键信息。 小心保留词 要保证你的字段名没有保留词、数据库系统或者常用访问方法冲突,比如,写的一个 ODBC 连接程序里有个表,其中就用了 DESC 作为说明字段名。后果可想而知!DESC 是 DESCENDING 缩写后的保留词。表里的一个 SELECT *语句倒是能用,但我得到的却是一大堆毫无用处的信息。 保持字段名和类型的一致性 在命名字段并为其指定数据类型的时候一定要保证一致性。假如字段在某个表中叫做“AgreeMentNumber” ,你就别在另一个表里把名字改成“ref1” 。假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了。记住,你干完自己的活了,其他人还要用你的数据库呢。 2 命名规则:数据库(Database)的定义 数据库名称 = 数据库内容标识(首字大写) 表(Table)的定义 命名应尽量反映存储的数据内容。 表名前缀:以该表及与该表相关联的一系列表的内容而得到一个代表统一的标识 表名称 = 表名前缀 + 表内容标识(首字大写) 如 ClientInfo 相关联的一系的表以 ci 作为前缀, 即有表名:ciHistory,ciContact,ciBusiness 字段(Field)的定义 字段是数据库中的用途最广泛的,它的类型非常多,所以必须加类型前缀来标示它的类型。 字段名称 = 字段类型前缀 + 字段内容标识(首字大写) 视图名 视图的名称 = “vw“ + 视图内容标识(首字大写) 如 vUserPerm 触发器名 触发类型触发标识 - Insert i Delete d Update u 触发名= “tr“ + 触发标识 + 相应的表名如:triClient,trdClient。 存储过程名 存储过程功能存储过程功能前缀 - 添加 a 更新 u 删除 d 查询或其它 o 存储过程名称 = 存储过程功能前缀 + 存储过程内容标识(首字大写) 如 spoChkUserPerm 变量名 每个单词的首个字母为大写,如EmployeeName。 命名中其他注意事项 禁止使用中文命名! 命名都不得超过 30 个字符的系统限制,变量名的长度限制为 29(不包括标识字符)。 命名都采用英文字符,每个单词的首个字母要大写 SQL 语句的编写规范 数据库中存储过程和触发器中涉及大量的 SQL 语句,对 SQL 语句的编写规范如下: 关键字大写:在 SQL 语句的编写中,凡是 SQL 语句的关键字一律大写,如:SELECT、ORDER BY、 GROUP BY、 FROM、WHERE、 UPDATE、 INSERT INTO、 SET、 BEGIN、 END Ruleru+Rule 标识 主键 pk+表名+主键标识 外键 fk+表名+主表名+外键标识 索引 idx+字段标识 Default df+Default 标识 3 编程结构和描述 SQL SERVER 系统中,一个批处理是从客户传给服务器的一个完整的包,可以包含若干条 SQL 语句。批处理中的语句是作为一组去进行语法分析、编译和执行的。触发器、存储过程等数据对象则是将批处理永久化的方法。 注释 注释可以包含在批处理中。在触发器、存储过程中包
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 施工现场机械设备管理
- 图形图像处理数码照片处理之缔造完美肌肤21课件
- 输电线路遥控调度方案
- 消防设施日常检查与维护方案
- 一矿物质概念及特点安徽医学高等专科学校79课件
- 水电基础知识培训资料课件
- 二零二五年度安防监控安装工程一切险保险协议
- 2025版图书馆数字资源与实体图书购销一体化协议
- 二零二五年度军队房地产租赁合同续签审批文件页2
- 二零二五年度离婚案件律师全面代理协议
- 从《大学衍义补》窥探丘濬法律思想的时代映照与传承价值
- 肿瘤药物配制注意事项
- GB/T 22126-2025物流中心作业通用规范
- 2025至2030年中国光接入系统设备行业发展前景及投资战略咨询报告
- 土地 赠与协议书
- 非遗数字技术课件
- 2024-2025学年吉林省吉林十二中高一(下)期末数学试卷(含答案)
- 2025年全国招标采购专业技能大赛(央企组)复习题及答案-竞赛类
- 疾病诊断讲课
- 手术室术中无菌技术课件
- 2025年食品安全培训考试试题(含答案)
评论
0/150
提交评论