数据库设计及命名规范http://blog.csdn.net/zhang_xinxiu/article/details/8521673

 这篇博客是对机房收费系统整个实现过程进行总结,主要分为三个阶段:第一,系统数据库的设计;第二,系统窗体的设计;第三,系统代码的编写。

一、系统数据库的设计

    1、设计之初

    在动手设计前,要做的就是对系统的熟悉。大概用了不到一周的时间,分别从系统的结构和各模块功能进行了整体的分析,并利用导图软件画出了下面的系统结构图。


            第一阶段的分析为后面的设计提供了很大的便利,有了对系统整体的把握于是可以安心的进行下步动手开始设计。

   2、设计中

    在进行设计时,借鉴了一些数据库设计的资料,对数据库表的命名规范进行了进一个步的学习,保证高效、便利的查询到表中想要的结果集。数据库中表名、报表名和查询名的命名是很重要的一个细节,直接影响了以后对数据库数据查询的高效性。但只对数据库表的每个字段进行命名是远远不够的,在设计时还要考虑每个字段的数据类型和保证数据完整性。

    表名、报表名和查询名的命名规范

    编码规范是一个优秀程序员必备的素质,它包括变量、方法、类的命名,数据库中表、字段、对象的命名及数据类型等等很多方面。在此只总结数据库中类型的命名规范,为以后高效的编写查询记录打下基础。


表1 数据类型规范表

描述类型

说明

Oracle

SQL Server

Access

int

整型

Integer

int

number

number(a,b)

带小数点数字

numeric

numeric

number

char(n)

定长字符串

char

char

text

varchar(n)

变长字符串

varchar2

varchar

text

date

日期/时间

DateTime

datetime

date/time

binary(n)

二进制内容

long raw

image

OLE Object

    注:原则上只使用这6种基本类型,不推荐使用Bool类型,请用int代替。在进行编写程序代码时,程序中的变量类型一定要高于数据库中相应变量的类型,避免使数据类型在进行转换时丢失数据。

表2其他数据库对象命名规范

对象名

前缀

范例

表(table)

tbl_/t_(或不加前缀)

userinfo/t_user_info/tbl_user_info

视图(view)

v_/v

v_user_info/vuserinfo

序列(sequence)

seq_

seq_user_info

簇(cluster)

c_

c_user_info

触发器(trigger)

trg_

trg_user_info

存储过程(procedure)

sp_/p_

sp_user_info/p_user_info

函数(function)

f_/fn_

fn_user_info/f_user_info

物化视图(materialized view)

mv_

mv_user_info

包和包体(package & package body)

pkg_

pkg_user_info

类和类体(type & type body)

typ_

typ_user_info

主键(primary key)

pk_

pk_user_info

外键(foreign key)

fk_

fk_user_info_fieldname

唯一索引(unique index)

uk_

uk_user_info_fieldname

普通索引(normal index)

idx_

idx_user_info_fieldname

位图索引(bitmap index)

bk_

bk_user_info_fieldname

同义词(synonym)

依据所分配的表所属模块/模式


数据库链接(database link)

无特殊要求


     3、总结

       问题:

           ①数据库结构设计;

           ②各对象命名;

           ③数据类型定义;

       解决办法:

           ①:没有做好,结构的设计很大部分参考了以前的数据库结构;

           ②:做的一般,查阅各资料对表名和字段名进行整齐的命名,提高了查询效率;

           ③:做的一般,大多用varchar类型,少数使用bigint类型,后期编写时也进行类型的更改;

       如何更好:

           ①:在设计时要对系统更进一步的进行分析,画出系统功能图和结构流程图;

           ②:相同类型的对象统一命名原则;

           ③:数据类型对于存储数据的应用varchar,对于编写序号的要用bigint或int,在分不清该用何种类型时先用varchar。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值