MYSQL数据库命名及设计规范

合集下载

MySQL数据库设计规范(仅供参考)

MySQL数据库设计规范(仅供参考)

MySQL数据库设计规范(仅供参考)MySQL数据库设计规范(仅供参考)⽬录1. 规范背景与⽬的2. 设计规范2.1 数据库设计2.1.1 库名2.1.2 表结构2.1.3 列数据类型优化2.1.4 索引设计2.1.5 分库分表、分区表2.1.6 字符集2.1.7 程序DAO层设计建议2.1.8 ⼀个规范的建表语句⽰例2.2 SQL编写2.2.1 DML语句2.2.2 多表连接2.2.3 事务2.2.4 排序和分组2.2.5 线上禁⽌使⽤的SQL语句1. 规范背景与⽬的MySQL数据库与 Oracle、 SQL Server 等数据库相⽐,有其内核上的优势与劣势。

我们在使⽤MySQL数据库的时候需要遵循⼀定规范,扬长避短。

本规范旨在帮助或指导RD、QA、OP等技术⼈员做出适合线上业务的数据库设计。

在数据库变更和处理流程、数据库表设计、SQL编写等⽅⾯予以规范,从⽽为公司业务系统稳定、健康地运⾏提供保障。

2. 设计规范2.1 数据库设计以下所有规范会按照【⾼危】、【强制】、【建议】三个级别进⾏标注,遵守优先级从⾼到低。

对于不满⾜【⾼危】和【强制】两个级别的设计,DBA会强制打回要求修改。

2.1.1 库名1. 【强制】库的名称必须控制在32个字符以内,相关模块的表名与表名之间尽量提现join的关系,如user表和user_login表。

2. 【强制】库的名称格式:业务系统名称_⼦系统名,同⼀模块使⽤的表名尽量使⽤统⼀前缀。

3. 【强制】⼀般分库名称命名格式是库通配名_编号,编号从0开始递增,⽐如wenda_001以时间进⾏分库的名称格式是“库通配名_时间”4. 【强制】创建数据库时必须显式指定字符集,并且字符集只能是utf8或者utf8mb4。

创建数据库SQL举例:create database db1 defaultcharacter set utf8;。

2.1.2 表结构1. 【强制】表和列的名称必须控制在32个字符以内,表名只能使⽤字母、数字和下划线,⼀律⼩写。

mysql 数据库设计命名规则

mysql 数据库设计命名规则

mysql 数据库设计命名规则
在MySQL数据库设计中,命名规则是非常重要的,它有助于提
高数据库的可读性和可维护性。

以下是一些常见的MySQL数据库设
计命名规则:
1. 表名命名规则:
使用有意义且描述性强的表名,避免使用简单的单词或缩写。

表名应该使用复数形式,以便清楚地表示其包含多个实例。

使用下划线或驼峰命名法来提高表名的可读性。

2. 字段名命名规则:
字段名应该简洁明了,能够清晰地描述其所代表的数据。

避免使用保留字作为字段名,以免引起冲突。

采用下划线或驼峰命名法来提高字段名的可读性。

3. 约束名命名规则:
约束名应该清晰表达其所起的作用,例如主键约束、外键约
束等。

约束名应该与表名和字段名保持一致,以便于理解和维护。

4. 索引名命名规则:
索引名应该清晰描述其所涉及的字段以及索引类型,例如
idx_字段名等。

避免使用过于复杂或含糊的索引名,以免混淆。

5. 视图和存储过程命名规则:
视图和存储过程的命名应该反映其所包含的数据或逻辑,便
于理解和识别。

总的来说,MySQL数据库设计的命名规则应该遵循清晰、简洁、有意义的原则,以便于他人阅读和理解,提高数据库的可维护性和
可扩展性。

同时,也要注意避免使用特殊字符和空格,以免引起不必要的麻烦。

希望以上信息能够对你有所帮助。

MySQL的数据库设计原则和规范

MySQL的数据库设计原则和规范

MySQL的数据库设计原则和规范随着互联网的快速发展,大量的数据被生成并储存在数据库中。

作为一种开源关系型数据库管理系统,MySQL因其高性能、可靠性和易用性而受到广泛的使用和认可。

在进行MySQL数据库设计时,遵循一些设计原则和规范可以帮助提高数据库的效率和可维护性。

本文将介绍一些MySQL数据库设计的原则和规范,以帮助开发人员更好地进行数据库设计。

一、表的设计1. 表的字段命名字段命名应该具有明确的含义,并遵循一定的命名规则。

通常,字段名应以小写字母开头,并使用下划线(_)或驼峰命名法(如camelCase)作为单词间的分隔符。

避免使用保留字作为字段名。

例如,一个表示用户姓名的字段可以被命名为“user_name”。

2. 主键的设计每个表都应该有一个主键用于唯一标识表中的每一行数据。

通常情况下,自增长的整数类型(如INT)被用作主键。

主键的命名应该使用表名加上“_id”的后缀,如“user_id”。

3. 字段的数据类型选择在选择字段的数据类型时,应该根据实际需求选择最适合的数据类型。

例如,使用INT代替VARCHAR来存储一个数字字段,可以提高查询效率和节省存储空间。

4. 字段的约束在创建表时,通过添加合适的约束来保证数据的完整性和一致性。

例如,可以使用NOT NULL约束来确保字段的值不能为空,使用UNIQUE约束来确保某个字段的值在表中是唯一的。

二、索引的设计索引对于提高查询性能和加快数据检索速度至关重要。

以下是一些关于索引设计的原则和规范:1. 表的主键字段应该被索引主键字段被用作唯一标识表中的每一行数据,因此应该被索引以提高查询效率和数据检索速度。

2. 经常用于WHERE子句的字段应该被索引字段在WHERE子句中的使用频率高,应该被索引以加快数据检索速度。

例如,一个经常用于查询的用户ID字段应该被索引。

3. 不要过度索引虽然索引可以提高查询性能,但过多的索引会增加数据库的维护成本和写操作的负担。

MySQL数据库表和字段命名规范

MySQL数据库表和字段命名规范

MySQL数据库表和字段命名规范导言:在数据库设计和开发中,表和字段的命名规范是非常重要的。

一个良好的命名规范能够提高代码的可读性、可维护性和辨识度。

本文将介绍一些常见的MySQL 数据库表和字段命名规范,希望对读者在数据库开发中有所帮助。

一、表命名规范1. 采用小写字母命名表名。

这样可以避免在跨平台时大小写不敏感的问题,并且有助于代码的一致性。

2. 多个单词用下划线(_)分隔。

例如,user_info、order_detail等。

3. 尽量给表名取得有意义且具有描述性的名字,能够清楚表达出表所存储的内容。

二、字段命名规范1. 采用小写字母命名字段名。

同样,这可以避免大小写不敏感的问题。

2. 也可以使用下划线(_)分隔。

例如,create_time、user_id等。

3. 尽量给字段取得有意义的名字,能够清楚表达字段所存储的数据。

三、表和字段命名的一些约定1. 避免使用MySQL保留字作为表名或字段名。

在MySQL中有一些保留字(如select、update等),如果使用这些保留字作为表名或字段名,可能引发一些潜在的问题,在查询时需要特殊处理。

可以在命名中加上下划线或其他可辨识符号来避免与保留字的冲突。

2. 避免使用过长或过于简短的命名。

过长的命名可能造成代码的冗余,过于简短的命名可能不具备辨识度。

合理的命名长度可以提高代码的可读性和可维护性。

3. 避免使用缩写和简写。

虽然缩写和简写可以减少字符数,但是在团队协作中容易引起误解和混淆。

具有明确、清晰含义的命名可以降低开发和维护的成本。

4. 保持命名的一致性。

在整个数据库中,保持表和字段的命名一致性,可以提高理解和维护代码的效率。

例如,如果一个表的主键命名为"id",那么在其他表中也保持主键命名为"id",而不是使用其他类似"pk"或"key"的名称。

四、表和字段命名的示例以下是一些常见的表和字段命名示例,仅供参考,读者可以根据实际情况进行调整:1. 用户信息表:user_info(字段包括user_id, username, password, email等)2. 订单详情表:order_detail(字段包括order_id, product_id, quantity等)3. 商品信息表:product_info(字段包括product_id, product_name, price等)4. 地址信息表:address_info(字段包括address_id, user_id, address等)结论:良好的MySQL数据库表和字段命名规范是数据库开发中必不可少的一部分。

mysql 数据库设计规约 概述及解释说明

mysql 数据库设计规约 概述及解释说明

mysql 数据库设计规约概述及解释说明1. 引言1.1 概述在现代信息化的社会背景下,数据库成为了各个行业中不可或缺的重要组成部分。

而数据库的设计规范则是确保数据库系统高效、可靠运行的基础。

MySQL作为目前最流行的关系型数据库管理系统之一,其设计规约对于保证数据的完整性和一致性至关重要。

本文将对MySQL数据库设计规约进行深入解释和说明,旨在提供给读者一个全面了解MySQL数据库设计规范及其重要性的视角。

1.2 文章结构本文将从以下几个方面进行详细阐述:引言、数据库设计规约解释说明、MySQL 数据库基础知识回顾、创建数据库和表格时应遵循的规范以及设计数据库关系时应遵循的规范。

通过这些内容,读者可以全面了解到MySQL数据库设计规约相关的核心概念和实践经验。

1.3 目的本文的目标可以总结为以下几点:首先,介绍和解释什么是MySQL数据库设计规约以及它们对于构建高度可管理和可扩展的数据库系统所起到的作用。

其次,回顾MySQL数据库的基础知识,包括它的特点、优势以及基本组成与架构。

这样可以为读者提供一个全面的背景,以便更好地理解如何使用数据库设计规范。

接着,讨论在创建数据库和表格时应遵循的规范。

这包括数据库、表格和字段命名规范以及注意事项。

通过明确这些规范,可以保证数据库在整个开发过程中的一致性和稳定性。

最后,探讨设计数据库关系时应遵循的规范。

主要包括主键、外键和索引设计原则、建立表格之间的关系以及范式理论在数据库设计中的应用。

这些规范将帮助读者优化数据库结构和关系,提高数据处理效率。

通过本文内容的解释与说明,读者将能够深入了解MySQL数据库设计规约,并能够在实际项目中灵活应用。

同时,也将对构建高效可靠的MySQL数据库系统具备更加全面和深入的认识。

2. 数据库设计规约解释说明2.1 数据库设计规约的定义和作用数据库设计规约是指在设计和开发数据库时需要遵循的一系列规范和准则。

它们旨在确保数据库的结构合理、高效,并且能够满足系统需求。

Mysql开发规范(命名规范 基础规范 库表设计 字段设计 索引规范 SQL设计)

Mysql开发规范(命名规范 基础规范 库表设计 字段设计 索引规范 SQL设计)

MySQL开发规范说明:数据库本身功能点很多,硬性限制上限比较高,比如单表大小,记录条数,多表join关联个数。

我们人为的加一些规范予以限制,是基于当前的并发度、响应时长、网络速度、硬件资源、备份时长、是否易于维护管理、便捷扩容、兼顾敏捷开发等诸多因素做的一个平衡选择。

比如索引个数限制(考虑记录更新需要更新索引,而这又涉及到单次数TPS带来的多次IOPS,影响磁盘使用率,磁盘满符合使用增加了吞吐量但又带来排队深度增加,总响应时长增长。

命名规范库名、表名、字段名必须使用小写字母,并采用下划线分割库名、表名、字段名禁止超过32个字符。

命名应与意义相符:比如k1,k2,k3这种无意义字段应该避免。

受限一下操作系统限制,库名尽量少于8个字符。

以便跨数据库版本迁移,比如mysql迁移db2,oracle等库名、表名、字段名禁止使用MySQL保留字比如:字段常见value 等关键字出现临时库、表名必须以tmp为前缀,并以日期为后缀,比如:tmp_order_yyyymmdd备份库、表必须以bak为前缀,并以日期为后缀,比如:t_order_bak_yyyymmdd基础规范使用INNODB存储引擎说明:mysql 官方版本已经设置表字符集使用UTF8,建议使用utf8mb4所有表都需要添加注释说明:增强可维护性,以及数据仓库、大数据项目等二次采集时数据调研的容易程度单表数据量建议控制在5000W以内说明:受限部署机器的内存,迁移数据的网络限制,对低端硬件设备(1000iops);表应设置在1000w以内不在数据库中存储图片、文件等大数据说明:核心库考虑高并发,高性能,以及有效使用内存等原因,大字段不具备内存缓存,以及插入数据时,删除数据导致聚簇索引行迁移。

禁止在线上做数据库压力测试禁止从测试、开发环境直连数据库说明:考虑实际阶段调整,直联容易出现,误修改数据,update不提交hold住事务,锁等待,以及核心数据丢书;物理上也开放端口给入侵留了安全隐患;以及员工变更的用户敏感数据外泄。

mysql数据库规范

mysql数据库规范

mysql数据库规范MySQL数据库规范MySQL是一款常用的关系型数据库管理系统,为了提高数据的一致性、可靠性和易维护性,我们需要制定一些数据库规范。

本文列举了一些MySQL数据库规范的建议,以帮助你更好地管理和维护MySQL数据库。

1. 表名和字段名规范- 表名和字段名应该使用小写字母,并使用下划线作为单词之间的分隔符。

例如,user_info是一个好的表名。

- 避免使用MySQL的关键字作为表名和字段名。

- 表名和字段名的命名应该具有描述性,能够清楚地表达其意义。

2. 主键规范- 每个表应该有一个主键来唯一标识每一行数据。

主键可以是单个字段,也可以是多个字段组合而成的复合主键。

- 主键字段应该是整型或者字符串类型,尽量避免使用大文本字段作为主键。

- 主键字段应该具有自增特性,以提高插入和查询的性能。

- 主键字段命名为id,表名是以表名加 id,如 user_info 表的主键应为 user_info_id。

3. 索引规范- 对于经常用于查询、排序和连接的字段,应该创建索引来提高查询性能。

例如,对于经常根据用户ID进行查询的表,应该为用户ID字段创建索引。

- 避免创建过多的索引,因为索引会增加数据的存储空间和维护负担。

只在必要的字段上创建索引。

- 避免创建过长的索引,因为较长的索引会占用更多的磁盘空间和内存。

- 定期对索引进行优化和维护,例如删除不再使用的索引,重新构建索引等。

4. 数据类型规范- 选择合适的数据类型来存储不同类型的数据,以提高存储效率和查询性能。

- 尽量避免使用大的文本类型,尤其是在索引字段上,因为文本类型的字段会占用更多的存储空间和CPU资源。

- 对于日期和时间类型的数据,应该使用合适的日期和时间类型,以方便日期和时间的计算和比较。

- 对于数值类型的数据,应该根据数据的精度和范围来选择合适的数值类型。

5. 数据库设计规范- 采用规范化的数据库设计,以减少数据冗余和提高数据一致性。

MYSQL数据库设计规范与原则

MYSQL数据库设计规范与原则

MYSQL数据库设计规范与原则MYSQL数据库设计规范1、数据库命名规范采⽤26个英⽂字母(区分⼤⼩写)和0-9的⾃然数(经常不需要)加上下划线'_'组成;命名简洁明确(长度不能超过30个字符);例如:user, stat, log, 也可以wifi_user, wifi_stat, wifi_log给数据库加个前缀;除⾮是备份数据库可以加0-9的⾃然数:user_db_20151210;2、数据库表名命名规范采⽤26个英⽂字母(区分⼤⼩写)和0-9的⾃然数(经常不需要)加上下划线'_'组成;命名简洁明确,多个单词⽤下划线'_'分隔;例如:user_login, user_profile, user_detail, user_role, user_role_relation,user_role_right, user_role_right_relation表前缀'user_'可以有效的把相同关系的表显⽰在⼀起;3、数据库表字段名命名规范采⽤26个英⽂字母(区分⼤⼩写)和0-9的⾃然数(经常不需要)加上下划线'_'组成;命名简洁明确,多个单词⽤下划线'_'分隔;例如:user_login表字段 user_id, user_name, pass_word, eamil, tickit, status, mobile, add_time;每个表中必须有⾃增主键,add_time(默认系统时间)表与表之间的相关联字段名称要求尽可能的相同;4、数据库表字段类型规范⽤尽量少的存储空间来存数⼀个字段的数据;例如:能使⽤int就不要使⽤varchar、char,能⽤varchar(16)就不要使⽤varchar(256);IP地址最好使⽤int类型;固定长度的类型最好使⽤char,例如:邮编;能使⽤tinyint就不要使⽤smallint,int;最好给每个字段⼀个默认值,最好不能为null;5、数据库表索引规范命名简洁明确,例如:user_login表user_name字段的索引应为user_name_index唯⼀索引;为每个表创建⼀个主键索引;为每个表创建合理的索引;建⽴复合索引请慎重;6、简单熟悉数据库范式第⼀范式(1NF):字段值具有原⼦性,不能再分(所有关系型数据库系统都满⾜第⼀范式);例如:姓名字段,其中姓和名是⼀个整体,如果区分姓和名那么必须设⽴两个独⽴字段;第⼆范式(2NF):⼀个表必须有主键,即每⾏数据都能被唯⼀的区分;备注:必须先满⾜第⼀范式;第三范式(3NF):⼀个表中不能包涵其他相关表中⾮关键字段的信息,即数据表不能有沉余字段;备注:必须先满⾜第⼆范式;备注:往往我们在设计表中不能遵守第三范式,因为合理的沉余字段将会给我们减少join的查询;例如:相册表中会添加图⽚的点击数字段,在相册图⽚表中也会添加图⽚的点击数字段;MYSQL数据库设计原则1、核⼼原则不在数据库做运算;cpu计算务必移⾄业务层;控制列数量(字段少⽽精,字段数建议在20以内);平衡范式与冗余(效率优先;往往牺牲范式)拒绝3B(拒绝⼤sql语句:big sql、拒绝⼤事物:big transaction、拒绝⼤批量:big batch);2、字段类原则⽤好数值类型(⽤合适的字段类型节约空间);字符转化为数字(能转化的最好转化,同样节约空间、提⾼查询性能);避免使⽤NULL字段(NULL字段很难查询优化、NULL字段的索引需要额外空间、NULL字段的复合索引⽆效);少⽤text类型(尽量使⽤varchar代替text字段);3、索引类原则合理使⽤索引(改善查询,减慢更新,索引⼀定不是越多越好);字符字段必须建前缀索引;不在索引做列运算;innodb主键推荐使⽤⾃增列(主键建⽴聚簇索引,主键不应该被修改,字符串不应该做主键)(理解Innodb的索引保存结构就知道了);不⽤外键(由程序保证约束);4、sql类原则sql语句尽可能简单(⼀条sql只能在⼀个cpu运算,⼤语句拆⼩语句,减少锁时间,⼀条⼤sql可以堵死整个库);简单的事务;避免使⽤trig/func(触发器、函数不⽤客户端程序取⽽代之);不⽤select*(消耗cpu,io,内存,带宽,这种程序不具有扩展性); OR改写为IN(or的效率是n级别);OR改写为UNION(mysql的索引合并很弱智);select id from t where phone = ’159′ or name= ‘john’; =>select id from t where phone=’159′unionselect id from t where name=’jonh’避免负向%;慎⽤count(*);limit⾼效分页(limit越⼤,效率越低);使⽤union all替代union(union有去重开销);少⽤连接join;使⽤group by;请使⽤同类型⽐较;打散批量更新;5、性能分析⼯具show profile;mysqlsla;mysqldumpslow;explain;show slow log;show processlist;。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

MYSQL数据库命名及设计规范
1.设计原则
1)标准化和规范化
数据的标准化有助于消除数据库中的数据冗余。

标准化有好几种形式,但Third Normal Form(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好平衡。

简单来说,遵守3NF标准的数据库的表设计原则是:“One Fact in One Place”即某个表只包括其本身基本的属性,当不是它们本身所具有的属性时需进行分解。

表之间的关系通过外键相连接。

它具有以下特点:有一组表专门存放通过键连接起来的关联数据。

举例:某个存放客户及其有关定单的3NF数据库就可能有两个表:Customer和Order。

Order表不包含定单关联客户的任何信息,但表内会存放一个键值,该键指向Customer表里包含该客户信息的那一行。

事实上,为了效率的缘故,对表不进行标准化有时也是必要的。

2)数据驱动
采用数据驱动而非硬编码的方式,许多策略变更和维护都会方便得多,大大增强系统的灵活性和扩展性。

举例,假如用户界面要访问外部数据源(文件、XML文档、其他数据库等),不妨把相应的连接和路径信息存储在用户界面支持表里。

还有,如果用户界面执行工作流之类的任务(发送邮件、打印信笺、修改记录状态等),那么产生工作流的数据也可以存放在数据库里。

角色权限管理也可以通过数据驱动来完成。

事实上,如果过程是数据驱动的,你就可以把相当大的责任推给用户,由用户来维护自己的工作流过程。

3)考虑各种变化
在设计数据库的时候考虑到哪些数据字段将来可能会发生变更。

举例,姓氏就是如此(注意是西方人的姓氏,比如女性结婚后从夫姓等)。

所以,在建立系统存储客户信息时,在单独的一个数据表里存储姓氏字段,而且还附加起始日和终止日等字段,这样就可以跟踪这一数据条目的变化。

2.数据库涉及字符规范
采用26个英文字母(区分大小写)和0-9这十个自然数,加上下划线'_'组成,共63个字符.不能出现其他字符(注释除外).
注意事项:
1)以上命名都不得超过30个字符的系统限制.变量名的长度限制为29(不包括标识字符@).
2)数据对象、变量的命名都采用英文字符,禁止使用中文命名.绝对不要在对象名的字符之间留空格.
3)小心保留词,要保证你的字段名没有和保留词、数据库系统或者常用访问方法冲突
5)保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性.假如数据类型在一个表里是整数,那在另一个表里可就别变成字符
型了.
3.数据库命名规范
数据库,数据表一律使用前缀
正式数据库名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.比如:
web_19floor_net
web_car
备份数据库名使用正式库名加上备份时间组成,如:
web_19floor_net_20070403
web_car_20070403
4.数据库表命名规范
数据表名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.
相关应用的数据表使用同一前缀,如论坛的表使用cdb_前缀,博客的数据表使用supe_前缀,前缀名称一般不超过5字
比如:
web_user
web_group
supe_userspace
备份数据表名使用正式表名加上备份时间组成,如:
web_user_20070403
web_group_20070403
supe_userspace_20070403
5.字段命名规范
字段名称使用单词组合完成,首字母小写,后面单词的首字母大写,最好是带表名前缀.
如web_user表的字段:
userId
userName
userPassword
表与表之间的相关联字段要用统一名称,
如web_user表里面的userId和web_group表里面的userId相对应
6.字段类型规范
规则:用尽量少的存储空间来存数一个字段的数据.
比如能用int的就不用char或者varchar
能用tinyint的就不用int
能用varchar(20)的就不用varchar(255)
时间戳字段尽量用int型,如created:表示从'1970-01-0108:00:00'开始的int 秒数,采用英文单词的过去式;gmtCreated:表示datetime类型的时间,即形如'1980-01-0100:00:00'的时间串,Java中对应的类型为Timestamp
7.数据库设计文档规范
所有数据库设计要写成文档,文档以模块化形式表达.大致格式如下:
/***************************
数据库名称:xtata_test
数据库描述:测试数据库
版本:v0.1
设计人:许立强
设计时间:2008-5-13
*/
字段类型(长度)是否为空其他信息字段描述
testId Int(11)否主动增加测试的ID 8.索引使用原则:
1)逻辑主键使用唯一的成组索引,对系统键(作为存储过程)采用唯一的非成组索引,对任何外键列采用非成组索引.考虑数据库的空间有多大,表如何进行访问,还有这些访问是否主要用作读写.
2)大多数数据库都索引自动创建的主键字段,但是可别忘了索引外键,它们也是经常使用的键,比如运行查询显示主表和所有关联表的某条记录就用得上.
3)不要索引blob/text等字段,不要索引大型字段(有很多字符),这样作会让索引占用太多的存储空间.
4)不要索引常用的小型表
不要为小型数据表设置任何键,假如它们经常有插入和删除操作就更别这样作了.对这些插入和删除操作的索引维护可能比扫描表空间消耗更多的时间.
9.sql语句规范
所有sql关键词全部大写,比如SELECT,UPDATE,FROM,ORDER,BY等,所有的表名和库名都要用``包含
如:
SELECT COUNT(*)FROM`cdb_members`WHERE`userName`='aeolus';
10.其他设计技巧
1)避免使用触发器
触发器的功能通常可以用其他方式实现.在调试程序时触发器可能成为干扰.假如你确实需要采用触发器,你最好集中对它文档化.
2)使用常用英语(或者其他任何语言)而不要使用编码或者拼音首字母缩写
在创建下拉菜单、列表、报表时最好按照英语名排序.假如需要编码或者拼音首字母缩写,可以在旁边附上用户知道的英语.
3)保存常用信息
让一个表专门存放一般数据库信息非常有用.在这个表里存放数据库当前版本、最近检查/修复(对Access)、关联设计文档的名称、客户等信息.这样可以实现一种简单机制跟踪数据库,当客户抱怨他们的数据库没有达到希望的要求而与你联系时,这样做对非客户机/服务器环境特别有用.
4)包含版本机制
在数据库中引入版本控制机制来确定使用中的数据库的版本.时间一长,用户的需求总是会改变的.最终可能会要求修改数据库结构.把版本信息直接存放到数据库中更为方便.
5)编制文档
对所有的快捷方式、命名规范、限制和函数都要编制文档.
采用给表、列、触发器等加注释的数据库工具.对开发、支持和跟踪修改非常有用.
对数据库文档化,或者在数据库自身的内部或者单独建立文档.这样,当过了一年多时间后再回过头来做第2个版本,犯错的机会将大大减少。

6)测试、测试、反复测试
建立或者修订数据库之后,必须用用户新输入的数据测试数据字段.最重要的是,让用户进行测试并且同用户一道保证选择的数据类型满足商业要求.测试需要在把新数据库投入实际服务之前完成。

7)检查设计
在开发期间检查数据库设计的常用技术是通过其所支持的应用程序原型检查数据库.换句话说,针对每一种最终表达数据的原型应用,保证你检查了数据模型并且查看如何取出数据。

相关文档
最新文档