SQL sever命名规范

这篇具有很好参考价值的文章主要介绍了SQL sever命名规范。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、标识符

二、表名(Table):

三、字段名(fields):

四、约束(Constraint):

五、索引(Index):

六、存储过程(Stored Procedure):

七、函数(Function):

八、触发器(Trigger):

九、视图(View):

十、大小写


      在生活实际工作中,常需要在SQL sever数据库中开发一些对象,因此就会多出许多不同的名称,为了方便个人和团队成员可以理解开发的对象,我们需要根据要求进行命名。但是命名也应该按照相应的规范完成,否则库中开发的内容就会杂乱无章。但是SQL Server的命名规范是可以因组织、项目和个人而异,以下是一些通用的命名规范建议:

一、标识符

  • 标识符的首字符必须是下列字符之一:统一码(Unicode) 2.0标准中所定义的字母(包括拉丁字母a~z和A~Z以及来自其他语言的字符)、下划线“_”、符号“@”或者数字符号“#”。
  • 在SQL Server中,以“@”符号开始的标识符表示局部变量或参数;以一个数字符号“#”开始的标识符表示临时表或过程,例如#gzb;以双数字符号“ ”开始的标识符表示全局临时对象,例如 gzb。
  • 来自拉丁字母或其他国家/地区脚本的十进制数字可以作为标识符的一部分。
  • 标识符不允许是Transact-SQL的保留字。
  • 不允许嵌入空格或其他特殊字符。

二、表名(Table):

  • 统一采用单数形式,例如:Order、UserAccount,反对使用Orders、order等。
  • 首字母大写,多个单词的话,单词首字母大写,例如:Order、UserAccount,反对使用order、Useraccount、ORDER等。
  • 避免中文拼音,例如:AgentBaoCi。
  • 避免下划线连接,例如:User_Accout(下划线适用Oracle数据库)。
  • 避免名称过长,控制在3个英文单词长度(22个字母),例如:WebsiteInfomationModifyRecord。
  • 表名应该有意义,并且易于理解,最好使用可以表达功能的英文单词或缩写。如果用英文单词表示,建议使用完整的英文单词,避免保留字。

注:

此处留有疑问:有些人认为表名使用复数,有些人认为使用单数;我通常是使用单数,希望知道此处具体使用哪种方式的码友告知原因?

  • 为了更准确地描述表对象,建议使用复数形式来命名表,例如"users"而不是"user"。

三、字段名(fields):

  • 字段名应该是描述性的,能够清晰地表达该字段的含义。
  • 字段名应该是唯一的,在同一表中不能有重名。
  • 字段名应该是简洁的,不要过长。
  • 首字母大写,多个单词的话,单词首字母大写。
  • 对于表的前缀命名,建议表前缀控制在两个以内,并且前缀应该是描述性的,能够表达该表的功能或类别。例如,系统表可以命名为S_、D_等。

四、约束(Constraint):

  • 约束名称应该描述性地反映约束的性质和作用。
  • 约束名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示约束的类型,例如:PK_表名、UQ_表名、IX_表名等。

比如主键和外键: 

  • 主键列通常以表名为前缀,后跟“ID”(例如,CustomerID)。
  • 外键应该使用与关联表主键一致的名称,并添加适当的前缀(例如,Order_CustomerID)。

五、索引(Index):

  • 索引名称应该清晰地反映其作用和列信息。
  • 索引名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示索引的类型,例如:IX_表名_列名、UQ_表名_列名等。

六、存储过程(Stored Procedure):

  • 存储过程名称应该描述性地反映其功能和作用。
  • 存储过程名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示存储过程的类型,例如:SP_、PR_等。

七、函数(Function):

  • 函数名称应该描述性地反映其功能和作用。
  • 函数名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示函数的类型,例如:FN_等。

八、触发器(Trigger):

  • 触发器名称应该描述性地反映其作用和关联表的信息。
  • 触发器名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示触发器的类型,例如:TR_等。

九、视图(View):

  • 视图名称应该描述性地反映其查看的表或列信息。
  • 视图名称应该是唯一的,以避免混淆和冲突。
  • 建议使用前缀来表示视图的类型,例如:V_等。

十、大小写

  • SQL Server默认情况下是不区分大小写的,但仍然建议在整个数据库中保持一致的大小写风格,以提高可读性。

总结:

命名规范应该遵循清晰、简洁、易于理解和统一的原则,以方便开发和管理。同时,为了避免命名冲突和混淆,建议使用前缀来标识不同的类型和用途。

 文章来源地址https://www.toymoban.com/news/detail-698667.html

到了这里,关于SQL sever命名规范的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据库课程设计——学生信息管理系统C#,SQL Sever

    目录 利用SQL Sever和 VS C#实现 一、程序流程图 二、具体实现:利用SQL Sever和 VS实现,使用C#连接数据库 1、新建一个名为MySchool的数据库​​​​​​​ 2、C#连接数据库,并实现对MySchool数据库的增、删、改、查操作 (1)主界面  (2)学生登录页面 (3)个人主页 (4)注册页

    2024年01月18日
    浏览(49)
  • SQL sever数据库----基础增删改查操作与where条件限制

    在SQL sever中使用where语句,可以对各种操作添加限制条件 基础格式为 ———————— where 逻辑表达式 例如限制条件的查询 select 范围 from 表名 where 逻辑表达式 逻辑表达式就是一个判断 如 a 5 、a+69、a5 and b5 各种符号及作用如下面的表所示 比较运算符 符号 含义 大于 小于

    2023年04月18日
    浏览(47)
  • (SQL)用bat启动sqlserver服务+创建数据库(学习笔记)

    注:我使用的软件是 Microsoft SQL Server Management Studio 18 我想创建一个bat的文本,于是就把记事本的后缀名txt直接改成了bat,但是当我想打开bat文件的时候却报错了。 改成 我双击 test.bat 文件,结果显示如下错误: 原来正确做法是 先创建后缀名是 txt 的文本,把代码写好,然后

    2024年02月05日
    浏览(59)
  • JAVA编码规范:安全规约、mysql数据库_java后端的sql编码规范

    7、【强制】如果存储的字符串长度几乎相等,使用 char定长字符串类型 8、【强制】varchar是可变长字符串,不预先分配存储空间,长度不要超过 5000,如果存储长度大于此值,定义字段类型为 text,独立出来一张 表,用主键来对应,避免影响其它字段索引效率。 9、【强制】表

    2024年04月10日
    浏览(49)
  • MySQL 数据库实用指南:测试数据准备、SQL语句规范与基本操作

    欢迎来到小K的MySQL专栏,本节将为大家准备MySQL测试数据、以及带来SQL语句规范、数据库的基本操作的详细讲解 要学习SQL查询语句,首先必须解决一个问题,数据问题。为了方便大家学习阅读我的文章,在这里提供了一个test.sql文件 ✨ 登录MySQL,输入 source xxx/test.sql 导入sql文

    2024年02月08日
    浏览(79)
  • win11 下 SQL2008数据库 SQLServer Management Studio 无法使用的问题

    系统升级到win11后,SqlServer2008数据库的管理工作SQLServer Management Studio 点击后没反应。经过测试数据库服务正常,只是管理工具无法使用。单独安装一个高版本的管理工具,问题解决。 我是下载的Sql Management Studio,链接如下:https://download.microsoft.com/download/8/a/8/8a8073d2-2e00-472b

    2024年02月11日
    浏览(53)
  • 【Sql】win11系统安装sqlserver2008r2数据库,找不到文件user.config line 5

    【问题描述】 在win11系统环境下, 安装sql server 2008 r2数据库的时候,提示【Microsoft.NET Framework】窗口错误。 如果点击继续,应用程序将忽略此错误并尝试继续。 具体错误明细: 创建userSettings/Microsoft.SqlServer.Configuration.LandingPageProperties.Settings的配置节处理过程是出错; 未能加

    2024年02月11日
    浏览(57)
  • idea连接Sqlserver数据库报错:驱动程序无法使用安全套接字层(SSL)加密建立到SQL

    com.microsoft.sqlserver.jdbc.SQLServerException:驱动程序无法使用安全套接字层(SSL)加密建立到SQL Server的安全连接。错误:“客户端首选项[TLS12]不接受服务器选择的协议版本TLS10”。 使用idea连接Sqlserver数据库,然后想用MybatisX插件生产代码 1、建立连接 填写数据库信息 测试连接报错

    2024年02月07日
    浏览(67)
  • 数据库表设计(一):字段设计规范和命名规范

    1.1.是否需要自增ID? 数据库表,一定要有id,而且要用自增id! 有些人喜欢用自定义的,用UUID或者其他七七八八的id,如果在架构设计,代码比较好的情况下,不会出啥大问题,但是一旦代码写的不行,极有可能就造成id重复之类的问题。 自增id另外还有一个好处,就是在数

    2023年04月08日
    浏览(103)
  • 连接数据库报com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接

    JDBC加载驱动,连接SQLServer 2012 报 java.ext.dirs: C:Program FilesJavajdk1.8.0_331jrelibext;C:WindowsSunJavalibext com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client pre

    2023年04月21日
    浏览(95)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包