年前买了这本书,在家没事看看,二百多页,没几天就看完了。
印象最深的就是这句“所谓专家,就是在一个很小的领域里把所有错误都犯过了的人”。可以看出来作者自己确实犯了很多很多错误,所以书里谈论的问题是实际应用中遇到的真问题,只这一点,我觉得买这本书值了。
其他优点就不说了,没那个谈一件事之前先来一大段吹捧的习惯,技术人,就事论事吧。
整本书看到的核心内容我觉得就是一点,提醒读者关系数据库的核心——“关系”二字。在思考具体应用的设计时,不要忘了关系数据库理论要面对的那些基本问题,为什么会有一范式、二范式、三范式、BC范式,面对的问题是什么。
但在我这些年的工作中,碰到的更多的情况是一 二范式大部分情况下会遵循,三范式就不一定了,是很不一定了。因为你不能单纯的就数据讨论数据,更多情况需要把这个放到一整套系统中就可用性、灵活性来考虑的。很多时候为了减轻某张表过大的访问压力,需要在别的表中存放冗余数据。
再拿最吸引我的第3章“单纯的树”这节举个例子,作者最终给出的比较好的解决方案“闭包表”确实很不错,但如果考虑另外的变量的话,实际情况就不一样了。该方案有个缺陷,即在中间的树关系表中最终将会产生大量数据,如果一个几千上万的原始数据,对应的关系表数据还是可以承受的,但放大到十万、百万呢,树层次有个四五层的话数据量将会多大?
对于作者不断强调的“关系”概念,我也有点保留,如果是做项目,或对已有系统的优化,很多人愿意在数据库的这些上面下功夫去探索。如果是做产品,或者是想要做产品,即便不做产品,原处的系统设计肯定都会弱化数据库的关系这个概念,仅仅把它当成一个存储层,应用的实际表现,如数据一致性等不可能首先依赖于数据库的设计,更多的是在程序中首先保证这一点。
这里无意贬低给出的方案的真实应用价值,而是提醒更多读者,从数据库设计角度考虑问题,书里给出的答案很不错,但真实应用不允许你只站在这个层次,第一位的是,你设计出来的东西的最终表现能否让客户接受。还是那句话,要综合考虑。
相关推荐
根据提供的文件信息,我们可以推断出这是一篇关于获取《SQL反模式》这本书PDF版本的文章。下面将基于这个前提,详细展开与该书相关的知识点。 ### SQL反模式概述 SQL反模式是指在数据库设计、查询编写及维护过程中...
### SQL反模式详解 #### 一、引言 《SQL反模式》这本书旨在帮助数据库开发者和管理者识别并避免常见的SQL编程陷阱。通过一系列具体案例分析,本书深入浅出地讲解了如何避开那些容易忽视但可能导致严重后果的问题。...
### SQL反模式知识点详解 #### 一、SQL反模式概览 **SQL反模式**(SQL Antipatterns)指的是在数据库设计与SQL查询编写过程中常见的错误做法或不良习惯,这些做法可能导致性能问题、数据不一致或其他技术难题。...
《SQL反模式 源代码》是一份宝贵的资源,它涵盖了数据库设计和SQL查询中常见的错误做法,也就是所谓的“反模式”。这些反模式是通过实际案例来展示的,旨在帮助数据库开发者和管理员避免在设计、优化和维护数据库时...
sql 反模式。它介绍了如何避免在SQL的使用和开发中陷入一些常见却经常被忽略的误区。它通过讲述各种具体的案例,以及开发人员和使用人员在面对这些案例时经常采用的错误解决方案,来介绍如何识别、利用这些陷阱,...
SQL反模式,作者[美]Bill Karwin,原版本是从本站下载,但原文件页面大小不一,又没有书签,阅读起来很不方便,所以花时间修改了页面的大小与加了详细的书签,花了几个小时,大家顶一顶吧!
《SQL反模式——逻辑数据库设计反模式》这本书深入探讨了在数据库设计中可能出现的问题和不良实践,这些问题通常被称为“反模式”。SQL反模式是数据库设计过程中的一些常见错误,这些错误可能导致性能下降、数据不...
《SQL反模式》是一本深入探讨SQL数据库设计与优化的经典之作。这本书中文版的高清PDF电子书,旨在帮助读者理解并避免在数据库设计过程中常见的错误和不良实践,从而提升数据库性能,确保数据的一致性和准确性。 SQL...
《SQL反模式》是数据库设计和SQL编程领域中一本极具影响力的书籍,它深入探讨了在实践中容易出现的问题以及如何避免这些“反模式”。SQL反模式指的是在使用SQL进行数据库设计和查询时,可能导致性能低下、可维护性差...
了解并避免SQL反模式对于提升数据库性能、增强代码可维护性具有重要意义。 #### 二、SQL反模式概述 SQL反模式是指在SQL查询编写、数据库设计或管理过程中出现的一些不良实践或错误的做法,这些做法可能会导致性能...
《SQL反模式(中文完整版)》这本书可能涵盖了以下一些常见的SQL反模式: 1. **过度依赖动态SQL**:在编程时,过度使用字符串拼接生成SQL语句可能导致SQL注入攻击,同时也降低了代码的可读性和可维护性。最佳实践是...
使用freearc解压
### 如何更改SQL Server服务器的身份验证模式 在安装SQL Server数据库引擎时,用户可以选择将其配置为Windows身份验证模式或SQL Server与Windows混合身份验证模式。这两种模式分别适用于不同的场景:前者仅支持通过...
中文名是《深入解析Microsoft Sql server 2008》,由邀月根据原英文纯手工翻译,加上自己的理解和注释,没有借助任何翻译工具。除了已注明的出处 MSDN 之外,如有转载,请注明来自邀月工作室。
修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL登录模式图解修改SQL...
(Microsoft SQL Server 2005 向后兼容组件) SQL Server Backward Compatibility 包中包含 最新版本的 Data Transformation Services 2000 运行时 (DTS)、SQL 分布式管理对象 (SQL-DMO)、 决策支持对象 (DSO) 和 ...
SQL 基础 SQL 首页 SQL 简介 SQL 语法 SQL select SQL distinct SQL where SQL AND & OR SQL Order By SQL insert SQL update SQL delete SQL 高级 SQL Top SQL Like SQL 通配符 SQL In SQL Between ...
模式的创建(1)和删除(1) 基本表的创建(3)、修改(1)和删除(1) 索引的创建(1)和删除(1) 数据操作 各类更新操作(插入数据(n) 、修改数据(1) 、删除数据(1) ) 各类查询操作(单表查询(1) 、连接查询(2) 、嵌套查询(2) ...
SQL Server 导入超大 SQL 脚本文件 SQL Server 是一种关系型数据库管理系统,广泛应用于各种行业。然而,在实际应用中,我们经常会遇到导入超大 SQL 脚本文件的问题。本文将介绍如何使用 osql 工具来导入超大 SQL ...