这篇文章给大家介绍SQLServer数据库有哪些设计规范,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
SQLServer数据库的设计规范有什么
1、对象注释规则:
注释头:注释头应该表明此对象具体实现功能,与之相关的对象以及操作参数、作者及最后修改时间。
存储过程:CalLnIncome
相关数据:
LnLineInfo,lnStation:提供线路及线路分成信息。
pbTransportBill,pbTrnasInfo:提供运量单数据。
lnInComeList:计算结果保存在此表中。
执行成功标记:lnCostList表内有最新时段的加总分成数据最后修改:Byyczyk,2003.11.20
注释内容:系统操作类一般都写在语句开始和最后,它与具体业务语句用分隔符分开!
SETQUOTED_IDENTIFIERONSETANSI_NULLSONSETANSI_WARNINGSONSETXACT_ABORTONdeclare@ServerNamevarchar(50),@UserNamevarchar(20),@Passwordvarchar(20),@DBNamevarchar(30),@TableQueryvarchar(4000)--参数定义select@ServerName=vcComputer,@UserName=vcUserName,@Password=vcPassword,@DBName=vcDataBasefromsmDataParamset@TableQuery='select*into##QJGroupInfofromopendatasource('+'''SQLOLEDB'','+'''DataSource='+rtrim(@ServerName)+';UserID='+rtrim(@UserName)+';Password='+rtrim(@Password)+''').'+rtrim(@DBName)+'.dbo.QJGroupInfo'--将数据导到当前连接服务器的全局临时表中备用,以后只要操作##QJGroupInfo表就可以exec(@TableQuery)updatesmDeptsetvcDeptName=t.GroupNamefrom(selectm.vcTransDeptNo,g.GroupNamefrom##QJGroupInfoginnerjoinsmDeptRelatemonm.vcSourceDeptNo=g.GroupIDwherem.RelateKind=0)astwherecDeptNo=t.vcTransDeptNo
SQLServer数据库的设计规范有什么
2、数据库设计规范数据库设计分为逻辑设计和物理设计
一般建议先对数据库进行逻辑建模,再将逻辑上的设计映射于物理设计。在逻辑设计时,请注意对象之间的关联性和数据的冗余性。表设计原则:每个表中都可以考虑添加的3个有用的字段。
・RecoredID,记录唯一编号,不建议采用业务数据作为记录的唯一编号。
・CreationDate,而在SQLServer下默认为GETDATE()。
・RecordCreator,在SQLServer下默认为NOTNULLDEFAULTUSER。
・RecordVersion,记录的版本标记;有助于准确说明记录中出现null数据或者丢失数据的原因数据类型:一般不建议采用char而采用varchar数据类型,除非当这列数据的长度特别固定时可以考虑用char。
char存在不足数值类型
假如表示金额货币建议用money型数据,假如表示科学记数建议用numeric数据类型。一般采用int类型标识唯一一行记录。此列是否采用自动累增视具体情况而定。假如需要在保存之前得到此标记次序,假如你要严格控制记录的加入次序,也不能用自动累增类型。
所有的表都应该有一个主键索引,这对提高数据库的性能很有帮助。假如表中能够用几个字段确定一笔记录,可以考虑建立唯一索引,但建立了唯一索引后就有了一个约束,如,假如一个表记录数过多,而自己如何建立索引不太熟悉,可以考虑在查询分析器里索引优化向导得到SQLServer。你可以在分析器里执行指定语句的查询执行计划,根据执行计划显示的查询成本来调整相应的查询语句。
保证数据的一致性和完整性:
主外键关联
建立主外键关联可以降低数据冗余,提高查询效率。虽然平时我们可以用join语句在不同的表之间进行关联,以在设计完表后通过企业管理器的关系图统一建立好关联图。所有的关联都建立好了后,我们可以在视图的建立里表中就应该记录当时的商品售价了。
建立约束实现数据有效性检测
你可以为某一列特别重要的值建立好约束。例如,你需要凭数据库里面的SaleKind列数据判定销售类别,你有0值为门店销售,1为网上销售。你系统只有这两种销售渠道,你就应该为它建立约束,它的值只能在0和1之间。即SaleKind>0andSaleKind<3。设置默认值操作数据库不建议用SA用户,因为SA用户权限过大。具体的应用应该创建相应的数据库操作用户,并只赋给它指定了异常建议写入数据库的日志表,查询日志表以发现自己程序中操作数据库中的失误。
关于SQLServer数据库有哪些设计规范就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。