zoukankan      html  css  js  c++  java
  • (转)[数据库基础]——编码标准之命名

    原文地址:http://www.cnblogs.com/BoyceYang/archive/2013/07/01/3166074.html

    阅读导航

    表 Tables、视图 Views

    存储过程 Stored Procedures

    触发器 Triggers

    索引 Indexes

    主键 Primary Keys

    外键 Foreign Keys

    Defaults

    列 Columns

    脚本命名

    一个语句写十遍,居然大部分时候都是不一样的。上网找了一些SQL的开发标准文档,结合项目中的使用,写一些关于自己SQL的开发标准文档。

    解编码标准就是一套写代码的指南、规则、约定的集合。编码标准应该足够灵活并且不会给开发造成负担。作为一个开发者来说,新接触一个项目,个人认为最重要的是熟悉当前项目的开发标准。这样不仅有利于快速熟悉已有代码和添加新代码,而且对以后的维护也很重要。

    表 Tables、视图 Views

    规则:使用Pascal命名法,并以‘s’ 或者‘es’ 结尾的复数形式。

    例子:

    表:Products,Customers

    视图:CurrentProductsLists

    如果涉及到一组相关的表,那么就是用’_’

    例子:

    Products_Asia,Products_Europe

    在表和视图命名,还是有一些差异的,比如:以 ‘TB_’、 ‘tbl_’ 作为表名的前缀,以‘VW_’ 作为视图名的前缀。

    存储过程 Stored Procedures

    规则:sp<应用名>_[<组名>_]<行为><表名/逻辑实例>,多个单词时仍然使用Pascal命名法

    例子:

    spOrders_GetNewOrders,spProducts_UpdateProduct

    也有以 ‘prc_’作为存储过程前缀

     

    触发器 Triggers

    规则:TR_<表名>_<行为>

    例子:

    TR_Orders_UpdateProducts

    注:不鼓励使用触发器

     

    索引 Indexes

    规则:IX_<表名>_<使用’_’分隔多列>

    例子:

    IX_Products_ProductID 

     

    主键 Primary Keys

    规则: PK_<表名>

    例子:

    PK_Products,PK_Orders

     

    外键 Foreign Keys

    规则:FK_<表名1>_<表名2>
    例子:

    FK_Products_Orderss

     

    Defaults

    规则:DF_<表名>_<列名>

    例子

    DF_Products_Quantity

     

    列 Columns

    规则:使用Pascal命名法,涉及到其他表的列的话,就使用<表名>列名

    例子:

    Customers表:ID,Name

    Orders表:ID,CustomerID

    脚本命名

    规则:

    存储过程的脚本名称以 ’sp_‘ 作为前缀

    Schema的脚本名称以 ’def_‘ 作为前缀

    Conversion脚本名称以 ’conv_‘ 作为前缀(对这个概念还不是很清楚)

    Rollback的脚本名称以 ’rbk_‘ 作为前缀

    例子:

    sp_GetNewOrders.sql,def_Orders.sql,conv_Orders.sql,rbk_Orders.sql

    一般规则

    命名中不要用空格,避免使用SQL的关键字,如果使用关键字,讲关键字放在’[]‘中(如:[Year]),建议做好所有的列名都是用’[]‘

     关于命名规则,如果有补充请留言

    没有任何规约对数据库开发的命名是绝对的,只要适合项目,适合开发者,并被大部分开发者所接受,就是好的标准,




    在此谢谢读完这篇博客,有什么写的不对的地方请指正。
    有帮助就推荐下,有感想就写下留言,不满意也写下留言,有问题及时更正。

    学习坚持,坚持学习

  • 相关阅读:
    附近地点搜索 ,地图
    网站访问量
    后台全选功能以及数据的提交方法
    首页banner特效
    等待加载提示
    缩略图轮播
    遍历input。select option 选中的值
    django1补充
    pythonweb框架django框架1
    图书馆管理系统的页面设计
  • 原文地址:https://www.cnblogs.com/fcsh820/p/3175042.html
Copyright © 2011-2022 走看看