SQL编程风格

SQL编程风格
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] ,
2008-10
版次: 1
ISBN: 9787115185822
定价: 39.00
装帧: 平装
开本: 大16开
纸张: 胶版纸
页数: 194页
字数: 256千字
正文语种: 简体中文
原版书名: Joe Celko's SQL Programming Style
27人买过
  •   《图灵程序设计丛书·SQL编程风格》针对数据库的设计与编程提出了一系列规则和建议,内容涵盖命名规范、代码版式、键的设计、数据编码方案、编码风格、视图和存储过程的使用以及SQL中的思考方式和一些试探法等多方面。这些规则都给出了原理说明和例外情况,并列举了大量示例。通过阅读《图灵程序设计丛书·SQL编程风格》,读者可以加深对SQL思维方式的理解,改善SQL编程风格,并编写出可读性强、可移植且易于维护的SQL代码。此外,书中的规则对于公司内部制定编程规范也具有很好的借鉴作用。
      《图灵程序设计丛书·SQL编程风格》适合数据库管理人员和开发人员阅读,也可作为高等院校计算机专业师生的参考教材。   JoeCelko世界著名的数据库专家,曾经担任ANSISQL标准委员会成员达10年之久,他也是世界上读者数量最多的SOL图书作者之一。他曾撰写过一系列专栏,并通过他的新闻组支持了数据库编程技术以及ANSI/ISO标准的发展。除本书外,他还撰写了多部SQL经典著作,包括《SQL解惑(第2版)》(人民邮电出版社,2008)和《SOL权威指南》(即将由人民邮电出版社出版)。 第1章 名称与数据元素
    1.1名称
    1.1.1注意名称长度
    1.1.2在名称中避免使用所有特殊字符
    1.1.3避免使用引号分隔标识符
    1.1.4实施大写规则以避免大小写区分问题
    1.2遵循ISO-11179标准命名规范
    1.2.1SQL的ISO-11179
    1.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将PRIMARYKEY声明放在CREATETABLE语句的开头
    3.5将列按照逻辑顺序排列并按照逻辑组聚合
    3.6将参考约束和操作在数据类型下面缩进
    3.7在产品代码中为约束命名
    3.8将CHECK()约束放在所检查的内容附近
    3.8.1对数值考虑使用范围约束
    3.8.2对于字符值考虑使用LIKE和SIMILARTO约束
    3.8.3时间值是有长短的
    3.8.4避免使用REAL和FLOAT数据类型
    3.9将多列约束尽可能靠近这些列
    3.10将表级别的CHECK()约束放到表声明的最后
    3.11对多表约束使用CREATEASSERTION
    3.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使用显式的丢失值避免NULL
    5.3.4为终端用户转换编码
    5.3.5在数据库中保存编码
    5.4多字符集

    第6章 编码选择
    6.1选择标准构造,不要选择专有构造
    6.1.1使用标准OUTERJOIN语法
    6.1.2中缀INNERJOIN和CORSSJOIN语法是可选的,但是很好用
    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避免使用UNION
    6.11测试SQL
    6.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.1WITHCHECKOPTION子句
    7.8.2INSTEADOF触发器
    7.9每个视图都要有创建的原因
    7.10避免视图的数量快速增长
    7.11将视图与基表同步
    7.12不恰当地使用视图
    7.12.1用于域支持的视图
    7.12.2单个解决方案的视图
    7.12.3不要为每个基表都创建视图
    7.13学习使用物化的视图

    第8章 如何编写存储过程
    8.1大多数SQL4GL都不是用于应用程序的
    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避免使用动态SQL
    8.6.1性能
    8.6.2SQL注入

    第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参考文献
    索引
  • 内容简介:
      《图灵程序设计丛书·SQL编程风格》针对数据库的设计与编程提出了一系列规则和建议,内容涵盖命名规范、代码版式、键的设计、数据编码方案、编码风格、视图和存储过程的使用以及SQL中的思考方式和一些试探法等多方面。这些规则都给出了原理说明和例外情况,并列举了大量示例。通过阅读《图灵程序设计丛书·SQL编程风格》,读者可以加深对SQL思维方式的理解,改善SQL编程风格,并编写出可读性强、可移植且易于维护的SQL代码。此外,书中的规则对于公司内部制定编程规范也具有很好的借鉴作用。
      《图灵程序设计丛书·SQL编程风格》适合数据库管理人员和开发人员阅读,也可作为高等院校计算机专业师生的参考教材。
  • 作者简介:
      JoeCelko世界著名的数据库专家,曾经担任ANSISQL标准委员会成员达10年之久,他也是世界上读者数量最多的SOL图书作者之一。他曾撰写过一系列专栏,并通过他的新闻组支持了数据库编程技术以及ANSI/ISO标准的发展。除本书外,他还撰写了多部SQL经典著作,包括《SQL解惑(第2版)》(人民邮电出版社,2008)和《SOL权威指南》(即将由人民邮电出版社出版)。
  • 目录:
    第1章 名称与数据元素
    1.1名称
    1.1.1注意名称长度
    1.1.2在名称中避免使用所有特殊字符
    1.1.3避免使用引号分隔标识符
    1.1.4实施大写规则以避免大小写区分问题
    1.2遵循ISO-11179标准命名规范
    1.2.1SQL的ISO-11179
    1.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将PRIMARYKEY声明放在CREATETABLE语句的开头
    3.5将列按照逻辑顺序排列并按照逻辑组聚合
    3.6将参考约束和操作在数据类型下面缩进
    3.7在产品代码中为约束命名
    3.8将CHECK()约束放在所检查的内容附近
    3.8.1对数值考虑使用范围约束
    3.8.2对于字符值考虑使用LIKE和SIMILARTO约束
    3.8.3时间值是有长短的
    3.8.4避免使用REAL和FLOAT数据类型
    3.9将多列约束尽可能靠近这些列
    3.10将表级别的CHECK()约束放到表声明的最后
    3.11对多表约束使用CREATEASSERTION
    3.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使用显式的丢失值避免NULL
    5.3.4为终端用户转换编码
    5.3.5在数据库中保存编码
    5.4多字符集

    第6章 编码选择
    6.1选择标准构造,不要选择专有构造
    6.1.1使用标准OUTERJOIN语法
    6.1.2中缀INNERJOIN和CORSSJOIN语法是可选的,但是很好用
    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避免使用UNION
    6.11测试SQL
    6.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.1WITHCHECKOPTION子句
    7.8.2INSTEADOF触发器
    7.9每个视图都要有创建的原因
    7.10避免视图的数量快速增长
    7.11将视图与基表同步
    7.12不恰当地使用视图
    7.12.1用于域支持的视图
    7.12.2单个解决方案的视图
    7.12.3不要为每个基表都创建视图
    7.13学习使用物化的视图

    第8章 如何编写存储过程
    8.1大多数SQL4GL都不是用于应用程序的
    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避免使用动态SQL
    8.6.1性能
    8.6.2SQL注入

    第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参考文献
    索引
查看详情
系列丛书 / 更多
SQL编程风格
机器学习实战
[美]Peter Harrington 著;李锐、李鹏、曲亚东 译
SQL编程风格
图灵程序设计丛书:Python基础教程
[挪威]Magnus Lie Hetland 著;司维、曾军崴、谭颖华 译
SQL编程风格
Python编程:从入门到实践
[美]埃里克·马瑟斯(Eric Matthes) 著;袁国忠 译
SQL编程风格
JavaScript高级程序设计(第3版)
[美]Nicholas C.Zakas 著;李松峰、曹力 译
SQL编程风格
R语言实战(第2版)
[美]卡巴科弗(Robert I. Kabacoff) 著;王小宁、刘撷芯、黄俊文 译
SQL编程风格
算法(第4版)
[美]Robert、[美]Kevin Wayne 著;谢路云 译
SQL编程风格
大数据:互联网大规模数据挖掘与分布式处理
[美]Anand、[美]Jeffrey David Ullman 著;王斌 译
SQL编程风格
Spark快速大数据分析
[美]卡劳(Holden Karau)、[美]肯维尼斯科(Andy Konwinski)、[美]温德尔(Patrick Wendell)、[加拿大]扎哈里亚(Matei Zaharia) 著;王道远 译
SQL编程风格
MySQL必知必会
[英]福塔(Ben Forta) 著;刘晓霞、钟鸣 译
SQL编程风格
图解HTTP
[日]上野·宣 著;于均良 译
SQL编程风格
算法图解
袁国忠 译
SQL编程风格
Spring Boot实战
[美]克雷格·沃斯(Craig Walls) 著;丁雪丰 译
相关图书 / 更多
SQL编程风格
SQL从入门到进阶
陈红波 编著
SQL编程风格
SQL Server数据库实用案例教程(第2版·微课视频版)
王雪梅 李海晨 主编;马亚丽 华进 蔡斌杰 副主编
SQL编程风格
SQLServer2019数据库管理项目教程(活页式高等职业教育计算机专业活页式系列教材)
黄小花、黄侃、熊慧芳 编
SQL编程风格
SQL面试宝典:图解数据库求职题(全彩)
猴子
SQL编程风格
SQL Server数据库设计与应用(第2版)
张成叔
SQL编程风格
SQL Server数据库应用入门(项目式+微课版)
李武韬 文瑛 吴超
SQL编程风格
SQL Server实例教程(2019版)
刘志成
SQL编程风格
SQL实践教程(第10版)
[美]马克·谢尔曼(Mark Shellman)哈桑·阿夫尤尼(Hassan A
SQL编程风格
SQL Server 2014数据库原理与实训教程
吴小刚 主编;彭文惠
SQL编程风格
SQL语言从入门到精通
明日科技
SQL编程风格
SQL Server从入门到精通(第5版)
明日科技
SQL编程风格
SQL数据分析
[美]凯西·谷村(Cathy Tanimura)
您可能感兴趣 / 更多
SQL编程风格
归属感:如何通过社群获得商业竞争优势
[美]大卫·斯平克斯(David Spinks) 著;颉腾文化 出品
SQL编程风格
雪花的故事(用照片展示雪花的秘密,为你揭开冬日奇景的奥秘)
[美]马克·卡西诺[美]乔恩·尼尔森
SQL编程风格
进阶书系-国际史的技艺
[美] 马克·特拉亨伯格
SQL编程风格
杜甫传
[美]弗洛伦斯.艾思柯
SQL编程风格
神奇的数字零:从数字0开始的极简数学史和人类发展史
[美]查尔斯·塞弗(Charles Seife)著 杨杨立汝 译
SQL编程风格
爵士乐史(精装本)
[美]泰德·乔亚 著
SQL编程风格
环境的科学 (平装版)
[美]威廉·坎宁安 后浪
SQL编程风格
美利坚在燃烧:20世纪60年代以来的警察暴力与黑人反抗
[美]伊丽莎白·欣顿 著 胡位钧 译
SQL编程风格
数学侦探 游乐园里的古怪笑脸
[美]丹尼尔·肯尼 艾米丽·博艾尔 著 刘玙婧、王婧 译;小博集出品
SQL编程风格
儒教中国及其现代命运(三部曲)
[美]列文森 作者;[中]季剑青 译者
SQL编程风格
逃家小兔成长绘本系列
[美]玛格丽特.怀兹.布朗
SQL编程风格
SQL解惑
[美]塞科 著;米全喜 译