资源大小: 16.54MB
发布时间: 2012-11-13
文件格式: pdf
下载次数: 7
分享到:

下载地址:

下载地址1
(本站为飞网专业下载站,域名:down.cfei.net)

资源简介:

中文名: SQL编程风格原名: Sql Programming Style作者: Joe Celko译者: 米全喜图书分类: 软件资源格式: PDF版本: 扫描版出版社: 人民邮电出版社书号: ISBN:9787115185822地区: 美国语言: 简体中文简介: 内容简介本书中,世界级SQL专家Joe Celko针对数据库的设计与编程提出了一系列规则和建议,内容涵盖命名规范、代码版式、键的设计、数据编码方案、编码风格、SQL中的思考方式等多个方面。可以作为软件公司内部编程规范的基础。书中讲述了如何编写标准、高效、易于维护的SQL代码。更重要的是。还教授读者如何像优秀的SQL程序员那样思考,用查询的思维方式来理解数据库,从而大大改善SQL编程风格并提高SQL编程水平。通过阅读本书,读者可以加深对SQL 思维方式的理解,改善SQL 编程风格,并编写出可读性强、可移植且易于维护的SQL 代码。此外,书中的规则对于公司内部制定编程规范也具有很好的借鉴作用。本书适合数据库管理人员和开发人员阅读,也可作为高等院校计算机专业师生的参考教材。内容截图 目录: 第1章 名称与数据元素1.1 名称1.1.1 注意名称长度1.1.2 在名称中避免使用所有特殊字符1.1.3 避免使用引号分隔标识符1.1.4 实施大写规则以避免大小写区分问题1.2 遵循ISO-11179标准命名规范1.2.1 SQL的ISO-111791.2.2 抽象级别1.2.3 避免使用描述性前缀1.2.4 制定标准化的后缀1.2.5 表和视图名称应当是遵循业界标准的、集合、类或复数名称1.2.6 相关名基本上也要遵循与其他名称相同的命名规则1.2.7 关系表名应当是常用描述术语1.2.8 元数据模式访问对象的名称可以包含结构信息1.3 命名数据元素时遇到的问题1.3.1 避免模糊名称1.3.2 避免名称在不同的地方改变1.3.3 不要使用专有暴露的物理定位符第2章 字体、标点和间距2.1 版式与代码2.1.1 名称中只使用大小写字母、数字和下划线2.1.2 列名、参数和变量等标量小写2.1.3 模式对象名首字母大写2.1.4 保留字大写2.1.5 避免使用驼峰命名法2.2 单词间距2.3 遵循规范标点规则2.4 使用完全保留字2.5 如果在使用的SQL产品中有标准保留字,就不要使用专有保留字2.6 如果有标准语句,就不要使用专有语句2.7 疏排版面的隔空白道和垂直间距2.8 缩进2.9 使用行间距将语句分组第3章 数据定义语言3.1 将默认值放到合适的地方3.2 默认值的类型应当与列的类型相同3.3 不要使用专有数据类型3.4 将PRIMARY KEY声明放在CREATE TABLE语句的开头3.5 将列按照逻辑顺序排列并按照逻辑组聚合3.6 将参考约束和操作在数据类型下面缩进3.7 在产品代码中为约束命名3.8 将CHECK()约束放在所检查的内容附近3.8.1 对数值考虑使用范围约束3.8.2 对于字符值考虑使用LIKE和SIMILAR TO约束3.8.3 时间值是有长短的3.8.4 避免使用REAL和FLOAT数据类型3.9 将多列约束尽可能靠近这些列3.10 将表级别的CHECK()约束放到表声明的最后3.11 对多表约束使用CREATE ASSERTION3.12 使CHECK()约束的目的唯一3.13 每个表都必须有键才能称为表3.13.1 自动编号不是关系型键3.13.2 文件不是表3.13.3 键的属性3.14 不要分割属性3.14.1 分割为多个表3.14.2 分割为多个列3.14.3 分割为多个行3.15 不要对RDBMS使用面向对象的设计3.15.1 表不是对象实例3.15.2 对RDBMS不要使用EAV设计第4章 尺度与测量4.1 测度论4.1.1 范围与颗粒度4.1.2 范围4.1.3 颗粒度、准确度和精度4.2 尺度类型4.2.1 名义尺度4.2.2 种类尺度4.2.3 绝对尺度4.2.4 顺序尺度4.2.5 级别尺度4.2.6 间距尺度4.2.7 比例尺度4.3 使用尺度4.4 尺度转换4.5 导出单位4.6 标点与标准单位4.7 在数据库中使用尺度的一般准则第5章 数据编码方案5.1 不好的编码方案5.2 编码方案类型5.2.1 枚举编码5.2.2 测量编码5.2.3 缩写编码5.2.4 算法编码5.2.5 层次编码5.2.6 向量编码5.2.7 拼接编码5.3 设计编码方案的一般准则5.3.1 现有的编码标准5.3.2 允许扩展5.3.3 使用显式的丢失值避免NULL5.3.4 为终端用户转换编码5.3.5 在数据库中保存编码5.4 多字符集第6章 编码选择6.1 选择标准构造,不要选择专有构造6.1.1 使用标准OUTER JOIN语法6.1.2 中缀INNER JOIN和CORSS JOIN语法是可选的,但是很好用6.1.3 使用ISO时间语法6.1.4 使用标准和可移植的函数6.2 选择紧凑格式,不要选择松散格式6.2.1 避免使用多余的括号6.2.2 使用CASE系列表达式6.2.3 避免使用冗余表达式6.2.4 寻找紧凑格式6.3 使用注释6.3.1 存储过程6.3.2 控制语句注释6.3.3 对子句的注释6.4 避免优化器提示6.5 触发器的优先级不应当高于DRI操作6.6 使用SQL存储过程6.7 避免在数据库中使用用户定义函数和扩展6.7.1 多语言问题6.7.2 可移植性问题6.7.3 优化问题6.8 避免使用过度的辅助索引6.9 避免使用关联子查询6.10 避免使用UNION6.11 测试SQL6.11.1 测试NULL所有可能的组合6.11.2 检查并测试所有的CHECK()约束6.11.3 注意字符列6.11.4 测试大小第7章 如何使用视图7.1 视图的命名规范与表一样7.2 视图提供行和列级别的安全性7.3 视图确保了有效访问路径7.4 视图对用户隐藏了复杂性7.5 视图确保了正确的数据派生7.6 视图将表和/或列重新命名7.7 视图实施复杂的完整性约束7.8 可更新的视图7.8.1 WITH CHECK OPTION子句7.8.2 INSTEAD OF触发器7.9 每个视图都要有创建的原因7.10 避免视图的数量快速增长7.11 将视图与基表同步7.12 不恰当地使用视图7.12.1 用于域支持的视图7.12.2 单个解决方案的视图7.12.3 不要为每个基表都创建视图7.13 学习使用物化的视图第8章 如何编写存储过程8.1 大多数SQL 4GL都不是用于应用程序的8.2 基本软件工程8.2.1 内聚8.2.2 耦合8.3 使用传统的结构化编程8.4 避免可移植性问题8.4.1 避免创建临时表8.4.2 避免使用游标8.4.3 面向集合的构造优于过程化代码8.5 标量与结构化参数的对比8.6 避免使用动态SQL8.6.1 性能8.6.2 SQL注入第9章 试探法9.1 将规格说明表达为清晰的语句9.2 在名词的后面加上“……的集合”9.3 从问题语句中删除行为动词9.4 仍然可以使用存根9.5 不要担心数据的显示9.6 第一次尝试需要特别处理9.6.1 不要舍不得扔掉你对DDL的第一次尝试9.6.2 保存你对DML的第一次尝试9.7 不要以方框和箭头的方式思考9.8 画圆圈和集合图9.9 学习方言9.10 假设WHERE子句是“巨型变形虫”9.11 使用新闻组和因特网第10章 以SQL的方式思考10.1 不好的SQL编程方式与过程化语言10.2 把列当作字段思考10.3 以过程化而不是说明性的方式思考10.4 模式应该看起来像输入格式附录A 资源附录B 参考文献索引


飞网下载站,免费下载共享资料,内容涉及教育资源、专业资料、IT资源、娱乐生活、经济管理、办公文书、游戏资料等。