SQL Server数据库的设计规范简介

我们在设计SQL Server数据库的时候,要遵循一定的设计规范,这样设计出来的数据库才能高效、安全、可靠。本文我们就介绍一下SQL Server数据库的设计规范,接下来就让我们来一起了解一下这部分内容。

1、对象注释规则:

注释头:注释头应该表明此对象具体实现功能,与之相关的对象以及操作参数、作者及最后修改时间。

存储过程:CalLnIncome

相关数据:

LnLineInfo,lnStation:提供线路及线路分成信息。

pbTransportBill,pbTrnasInfo:提供运量单数据。

lnInComeList:计算结果保存在此表中。

执行成功标记:lnCostList表内有最新时段的加总分成数据最后修改:By yczyk,2003.11.20

注释内容:系统操作类一般都写在语句开始和最后,它与具体业务语句用分隔符分开!

  1. SET QUOTED_IDENTIFIER ON   
  2. SET ANSI_NULLS ON   
  3. SET ANSI_WARNINGS ON  
  4. SET XACT_ABORT ON declare @ServerName varchar(50),@UserName varchar(20),@Password varchar(20),@DBName varchar(30),  
  5. @TableQuery varchar(4000)--参数定义  
  6. select @ServerName=vcComputer,@UserName=vcUserName,@Password=vcPassword,@DBName=vcDataBase   
  7. from smDataParam set @TableQuery='select * into ##QJGroupInfo from opendatasource('+'''SQLOLEDB'','+'''Data  
  8. Source='+rtrim(@ServerName)+';User ID='+rtrim(@UserName)+';Password='  
  9. +rtrim(@Password)+''').'+rtrim(@DBName)+'.dbo.QJGroupInfo'  
  10. --将数据导到当前连接服务器的全局临时表中备用,以后只要操作##QJGroupInfo表就可以  
  11. exec (@TableQuery) update smDept set vcDeptName=t.GroupName from (  
  12. select  m.vcTransDeptNo,g.GroupName from ##QJGroupInfo g inner join smDeptRelate m  
  13. on m.vcSourceDeptNo=g.GroupID where m.RelateKind=0)as t where cDeptNo=t.vcTransDeptNo 

2、数据库设计规范数据库设计分为逻辑设计和物理设计

一般建议先对数据库进行逻辑建模,再将逻辑上的设计映射于物理设计。在逻辑设计时,请注意对象之间的关联性和数据的冗余性。 表设计原则:每个表中都可以考虑添加的3个有用的字段。

・ RecoredID  ,记录唯一编号,不建议采用业务数据作为记录的唯一编号。

・ CreationDate,而在SQL Server 下默认为GETDATE()。

・ RecordCreator,在SQL Server 下默认为NOT NULL DEFAULT USER。

・ RecordVersion,记录的版本标记;有助于准确说明记录中出现null 数据或者丢失数据的原因数据类型:一般不建议采用char而采用varchar数据类型,除非当这列数据的长度特别固定时可以考虑用char。

char存在不足数值类型

如果表示金额货币建议用money型数据,如果表示科学记数建议用numeric数据类型。一般采用int类型标识唯一一行记录。此列是否采用自动累增视具体情况而定。如果需要在保存之前得到此标记次序,如果你要严格控制记录的加入次序,也不能用自动累增类型。

所有的表都应该有一个主键索引,这对提高数据库的性能很有帮助。如果表中能够用几个字段确定一笔记录,可以考虑建立唯一索引,但建立了唯一索引后就有了一个约束,如,如果一个表记录数过多,而自己如何建立索引不太熟悉,可以考虑在查询分析器里索引优化向导得到SQLServer 。你可以在分析器里执行指定语句的查询执行计划,根据执行计划显示的查询成本来调整相应的查询语句。

保证数据的一致性和完整性:

主外键关联

建立主外键关联可以降低数据冗余,提高查询效率。虽然平时我们可以用join语句在不同的表之间进行关联,以在设计完表后通过企业管理器的关系图统一建立好关联图。所有的关联都建立好了后,我们可以在视图的建立里表中就应该记录当时的商品售价了。

建立约束实现数据有效性检测

你可以为某一列特别重要的值建立好约束。例如,你需要凭数据库里面的SaleKind列数据判定销售类别,你有0值为门店销售,1为网上销售。你系统只有这两种销售渠道,你就应该为它建立约束,它的值只能在0和1之间。即SaleKind>0 and SaleKind<3 。设置默认值操作数据库不建议用SA用户,因为SA用户权限过大。具体的应用应该创建相应的数据库操作用户,并只赋给它指定了异常建议写入数据库的日志表,查询日志表以发现自己程序中操作数据库中的失误。

关于SQL Server数据库的设计规范的知识就介绍到这里了,希望本次的介绍能够对您有所收获!更多SQL Server数据库的知识,请参考:http://database./sqlserver/。

【编辑推荐】

  1. SQL Server 2008数据库学习笔记
  2. SQL Server 2005数据库nolock使用详解
  3. SQL Server如何启用Ad Hoc Distributed Queries?
  4. SQL Server 2008用存储过程实现插入更新数据的实例
  5. 含有GROUP BY子句的查询中如何显示COUNT()为0的结果

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/308971.html<

(0)
管理的头像管理
上一篇2025-05-27 20:12
下一篇 2025-05-27 20:14

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注