SQL实战新手入门:前言

作者&投稿:窦茗 (若有异议请与网页底部的电邮联系)
~

   前言

  信息泛滥并没有减弱的趋势 人们被来自电视 Internet和塞满邮箱的广告等各种各样的信息所淹没 令人遗憾的是 随着信息数量的增长 信息的质量却在急剧下降 图书被期刊和杂志取代 然后被报纸 Web页面 博客取代 最终又被推特(eet)取代 信息量变得越来越庞大 也变得越来越不可信赖 更糟糕的是 在Internet时代数据永远不会真正消失 它不停地累积 隐藏在各种文件 日志和数据库中 根据Google的前CEO Eric Schmidt的说法 现在人类在两天之内创造的数据量就相当于自从出现书写记录到 年(或者任何一年)所创造的数据 即现在只需要两天就会创造出大约 EB(即 亿GB)的数据 这一步伐还在不停地加速

  当以电子化方式存储数据变成现实之后 它也带来了自己的规则 要理解数据的含义 人们必须去学习相应的语言 关系数据库理论为人们带来了对电子化数据的掌控能力 它采用结构化查询语言(Structured Query Language SQL)来处理数据 到目前为止 关系数据库获取了巨大的成功

  自从 世纪 年代第一次提出关系数据库以来 关系数据库和SQL已经取得了长足的进步 关系数据库和SQL中包含的那些概念对于初学者来说可能并不直观 本书将为读者抽丝剥茧 使读者理解SQL背后的原理 既让读者了解SQL的强大功能 也了解它存在的局限

   读者对象

  本书从入门知识开始介绍 读者无须具备SQL或关系数据库的预备知识 本书将带领读者走入SQL的发现之旅 读者将亲自创建示例数据库 它不仅结合了本书中所介绍的SQL概念 还将通过几次反复重构引入数据建模 查询调整和优化的概念 本书还介绍了一些适用于每一种SQL的最佳实践

  本书适合于准备学习关系数据库程序设计的计算机程序员 也适合那些希望从数据库中释放更强大威力的商业用户 SQL是关系数据库世界的通用语言 每一个对学习SQL这门强大语言感兴趣的人都适合阅读本书

  先前已具有一定数据库使用经验的读者可以略过前两章 直接跳到更高级的内容 当然也可以复习一下这两章中介绍的重要原则

   内容提要

  本书介绍了当前已发布的SQL标准SQL: 把最主要的精力放在了SQL语言实际的运用上 强调了不同SQL实现之间存在的差异 本书介绍了很多示例 在这些示例中使用了最新版本的现代数据库系统对SQL的具体实现 这些数据库要么是可以免费下载的Express版本 要么是免费的开源软件 另外 本书还介绍了目前最流行的桌面型数据库软件Microsoft Access和OpenOffice 本书中介绍的数据库包括

  IBM UDB

  Oracle g

  Microsoft SQL Server / /

  MySQL /

  PostgreSQL

  Microsoft Access /

  带有嵌入式 HSQLDB的OpenOffice BASE

   本书结构

  本书从整体着眼 向读者介绍了关系数据库的一般概念 特别是SQL中的概念 通过一个反复重构数据库的过程 循序渐进地向读者介绍了数据库的各种知识 在这一过程中 对于开始时介绍的每一个概念 随后都进行了更详细的分析 从而启发读者理解这些概念背后的关联性

  第 章简要地介绍了SQL及其背后的关系理论 这一章只是浮光掠影般地介绍了数据库最基本的概念 后面的各章都在此基础上展开 该章介绍了数据与信息的区别 一些基本的原理还需要在后面章节中进一步解释 这一章还对本书中所使用的关系数据库管理系统(RDBMS)进行了一个概述

  第 章对这些概念进行了更深入的介绍 根据关系模型的分析 应该将无组织的数据结构化 使之符合关系模型的要求 即将 冰箱磁铁 模式转换为 斗柜 模式 然后再将其转换为关系数据库中实际的表

  第 章进一步介绍了关系模型 初步介绍了数据库的基本设计和规范化的基本过程 这一章还介绍了一些对规范化数据执行查询的SQL工具 此外 该章还介绍了动态SQL

  SQL是一种基于集合的语言 这使得它既有强大的功能 也存在一定的局限 第 章讨论了最流行的过程化扩展(例如Oracle的PL/SQL和Microsoft的Transact SQL) 这一章还介绍了SQL函数 SQL函数可以作为一种补充手段 以弥补在处理基于记录的逻辑时SQL存在的固有不足

  第 章介绍了聚合数据 总结了这种方式的威力和局限 该章将前面章节中介绍过的SQL聚合函数提高到了一个新的层次 演示了如何使用SQL来获取数据的聚合值

  第 章介绍了子查询 当数据集是交错的 查询数据需要依靠多层次的数据筛选时 可以将一个查询作为另一个查询的筛选条件 可以调整SQL语句 用JOIN代替子查询 这是贯穿本书的主题之一

  SQL的强大功能在于处理存储在多个关系表中的数据 第 章介绍了SQL如何在单个数据集中联合这些关系表的数据

  本书介绍的是基本的SQL概念 打开了进一步学习SQL的大门 第 章是SQL发现之旅的下一站 它介绍了进一步学习SQL时应该考虑的问题

  第 章介绍了性能优化技术 描述了在优化查询和数据库环境时常用的方法和最佳实践 第 章讨论了多用户环境中关系数据库的工作原理 介绍了SQL中实现的处理并发数据访问的机制

  SQL所有的操作都与结构和顺序有关 毕竟它是结构化查询语言 真实的数据可以是各种规模和结构 第 章介绍了SQL如何处理半结构化数据(XML文档) 非结构化数据(文本文件)和二进制数据(例如图片和声音)

  第 章简要地讨论了数据库领域的最新发展 例如列式数据库 NoSQL数据库 对象数据库和面向服务的架构(SOA) 以及它们与SQL的关系

  对于本书所讨论的每一种数据库 附录A按部就班地描述了安装示例数据库Library的过程 以及如何使用特定的指令生成Library数据库的初始数据 可以从本书支持网站上下载到这些SQL脚本

  对于本书介绍的关系数据库软件包 附录B提供了一个详细的安装步骤

  附录C描述了每一种数据库所提供的工具 使用这些工具可以访问 创建数据库对象 操纵存储在表中的数据

  附录D介绍了开源项目SQuirreL Universal SQL Client 可以通过Java Database Connectivity(JDBC)接口 使用SQuirreL Universal SQL Client来访问各种数据库 该附录详细地介绍了如何安装和配置该软件

   学习本书的条件

  为了充分利用本书 建议下载和安装本书中使用的关系数据库软件 这些软件绝大多数都是免费的 或者具有免费的试用版 可以按照附录B中介绍的步骤来安装这些软件

   支持网站和代码

  在学习每一章时 建议下载相应的SQL脚本 创建并生成数据库 可以从 wrox 或者 agilitator 下载到本书的代码 在支持网站中 可以使用搜索框来查找指定名称的图书 在找到指定的图书之后 单击Download Code链接就可以访问允许下载的文件 可以通过HTTP或FTP下载这些代码 所有的文件都是以ZIP格式保存

  本书的ISBN是 通过ISBN号查找本书 要比通过图书名称来查找更加方便

  此外 还可以从Wrox的下载页面 wrox /dynamic/books/download aspx下载到本书的代码 只要单击Discovering SQL: A Hands On Guide for Beginners链接 就可以访问允许下载的文件

   勘误表

  尽管我们已经尽了最大的努力来保证文章或代码中不出现错误 但是错误总是难免的 如果您在本书中找到了错误 例如拼写错误或代码错误 请告诉我们 我们将非常感激 通过勘误表 可以让其他读者避免走入误区 当然 这还有助于提供更高质量的信息

  要在网站上找到本书英文版的勘误表 可以登录// wrox 通过Search工具或书名列表查找本书 然后在本书的细目页面上 单击Book Errata链接 在这个页面上可以查看到Wrox编辑已提交和粘贴的所有勘误项 完整的图书列表还包括每本书的勘误表 网址是 wrox /misc pages/booklist s

  如果你在勘误表上没有找到错误 那么可以到 wrox /contact/techsupport s上完成上面的表格 并把找到的错误发送给我们 我们将会核查这些信息 如果无误的话 会把它放置到本书的勘误表中 并在本书的后续版本中更正这些问题

   p p wrox

  要与作者和同行讨论 请加入p p wrox 上的P P论坛 这个论坛是一个基于Web的系统 便于您张贴与Wrox图书相关的消息和相关技术 与其他读者和技术用户交流心得 该论坛提供了订阅功能 当论坛上有新的消息时 它可以给您传送感兴趣的论题 Wrox作者 编辑和其他业界专家和读者都会到这个论坛上来探讨问题

  在//p p wrox 上 有许多不同的论坛 它们不仅有助于阅读本书 还有助于开发自己的应用程序 要加入论坛 可以遵循下面的步骤

  ( ) 进入p p wrox 单击Register链接

  ( ) 阅读使用协议 并单击Agree按钮

  ( ) 填写加入该论坛所需要的信息和自己希望提供的其他信息 并单击Submit按钮

  ( ) 你会收到一封电子邮件 其中的信息描述了如何验证账户和完成加入过程

  不加入P P也可以阅读论坛上的消息 但要张贴自己的消息 就必须加入该论坛

  加入论坛后 就可以张贴新消息 回复其他用户张贴的消息 可以随时在Web上阅读消息 如果要让该网站给自己发送特定论坛中的消息 可以单击论坛列表中该论坛名旁边的Subscribe to this Forum图标

  关于使用Wrox P P的更多信息 可阅读P P FAQ 了解论坛软件的工作情况以及P P和Wrox图书的许多常见问题 要阅读FAQ 可以在任意P P页面上单击FAQ链接

       返回目录 SQL实战新手入门

       编辑推荐

       Oracle索引技术

       高性能MySQL

lishixinzhi/Article/program/SQL/201311/16496




WebGL初探—Three.js全景图实战
http:\/\/www.sunql.top\/webgldemo\/index.html https:\/\/github.com\/sunql0827\/webgldemo.git https:\/\/gitee.com\/sunql-hugh\/webgldemo.git 通过这次基于three.js的webgl全景图开发之旅为我对视图渲染打开了一道新的大门,不过webgl的厉害之处还有很多很多是我还未涉及到了,以后还需要更加努力了...

web前端需要哪些技术?
在此毛遂自荐自己的教程《用grunt搭建自动化web开发环境》,讲的比较详细,适合初学者学习。 如果你的系统...GraphQL 使用量进一步增长、 Serverless 也逐渐被普及… 2020年前端最火的技术毫无疑问将会是webassembly

Hadoop实战的作品目录
第一部分 Hadoop——一种分布式编程框架第1章 Hadoop简介 21.1 为什么写《Hadoop 实战》 31.2 什么是Hadoop 31.3 了解分布式系统和Hadoop 41.4 比较SQL数据库和Hadoop 51.5 理解MapReduce 61.5.1 动手扩展一个简单程序 71.5.2 相同程序在MapReduce中的扩展 91.6 用Hadoop统计...

Java培训班的课程一般都学习什么内容呢?
Linux环境下项目发布部署等。3、掌握使用流行框架SSM\\SSH技术实现企业级项目开发:重点学习MyBatis、Spring、Spring MVC框架的应用,Git、Java设计模式等,重点学习Struts2 、Spring、Hibernate框架的应用,Maven、Oracle数据库应用技术,了解大数据生态体系,Hadoop基础入门。4、JavaWeb框架:Spring体系结构、...

推荐如何系统的学习JAVA?
如何系统学习java体系 学java首先要学 J2SE,它是java体系的基础,也是重中之重。很多人往往不重视基础,其实这是舍本逐末的做法。说这么多就是希望大家能重视基础,能在这条路上走的更远。学j2se有下面几个目标:1、你要能真正理解面向对象的优势,理解为什么不是面向过程。2、掌握java语法基础。包括...

求股指期货的经典书籍
【一阳】股指期货实战指引 PDF电子书.PDF,免费下载 链接: https:\/\/pan.baidu.com\/s\/13SZNJp_DBLdSVbTcRdr5tg 提取码: ikn2 本书旨在帮助投资者在股指期货巿场既能赚到钱又能有效地防范各种风险,用四章的篇幅详细地阐述指数与股指期货的关系、分析指数确定股指期货的操作策略、通过个股确定股指...

初学者选择化妆学校应注意哪些方面?
初学者选择化妆学校应注意哪些方面?选择化妆学校要注意很多 学校的环境 教学理念 老师负不负责这些都是最基本的 初学者找化妆学校应该注意什么 新手学化妆在选学校的时候,肯定都是考虑到怎么选教学质量好的学校,想通过专业的学校学出来之后,改变自己的现状,那么改变?缺乏的是什么呢?我觉得应该是行动...

求推荐一下关于Web前端的相关资料!
GraphQL 《GraphQL-前端开发的利剑与桥梁》《GraphQL 入门看这篇就够了》《前端工程师应该了解的 GraphQL》VS Code《动图演示11个必备 VS Code 插件》三)面试题精选 《高频前端面试题》《吐血整理!再来一打 Webpack 面试题》《前端同学经常忽视的一个 JavaScript 面试题》《如何轻松拿到淘宝前端 ...

解放军在台周边实施海空封锁实战演习,055歼20的战斗力有多有多强...
另外歼20战斗机也成为了国家的中流砥柱,所以在面对美国佩洛西的威胁时,国家做出了歼20战斗机亮相的决策,而且解放军也在台周边实施海空封锁实战演习。歼20战斗机的战斗力是非常强的,因为速度非常快,即使面临美国这样军事力量第一的国家也是有胜算的,甚至要比美国最先进的战斗机速度还要快,这就能够...

我需要 Dreamweaver CC动态网站开发案例课堂,求发这教材的网盘链接_百 ...
https:\/\/pan.baidu.com\/s\/1EZTISkIC79CbIKaQLksh1w 提取码:1234 《Dreamweaver CC动态网站开发案例课堂(第2版)》以零基础讲解为宗旨,用实例引导读者深入学习,采取“基础入门→核心技术→动态网站开发→高手秘籍”的讲解模式,深入浅出地讲解Dreamweaver CC动态网站开发的各项技术及实战技能。

和布克赛尔蒙古自治县15529296583: 我想学习SQL语言,但是个初学者,该怎么着手去学 -
禄居抗病: 1、基本概念:表、视图等.2、基本命令:select、insert、update、delete.3、联合查询:join(横向,字段联合)、Union(纵向,记录堆叠).4、存储过程与触发器(有些SQL未必有,但MSSQL肯定有).5、事务(有些SQL未必有,但MSSQL肯定有).6、精准掌握和熟练运用上面的方法后,你不再是入门了,向配置SQL服务性能、优化查询方面去努力吧.

和布克赛尔蒙古自治县15529296583: 如何从零开始学习SQL? -
禄居抗病: 先熟悉基本的SQL语句,比如四个基本的语句 比如下表,表名为a : 姓名 卡号 性别 班级张三 001 男 1李四 002 男 2林采儿 003 女 2刘静 004 女 1 1,查询语句 select * from 表名 where 条件,比如查询性别为男的全部信息语句:select * from...

和布克赛尔蒙古自治县15529296583: SQL语言入门
禄居抗病: 单纯的sql有什么好学的,sql是数据库操作语言,一般都是学习某种数据库的时候学习其特有的sql语言,而不是专门去学sql,其和其他的编程语言不一样

和布克赛尔蒙古自治县15529296583: sql语句应用……初学者
禄居抗病: 这个问题主要有两个知识点: 1、left join、inner join、right join的含义和区别 2、字符串合并函数,不同的数据库不一样 从楼主贴的图的结果来看,查询结果是合并了两表的字段1,取了表2的字段2和字段三. 因此查询语句为: select 表1.字段1+表2.字段1,表2.字段2,表2.字段3 from 表1 right join 表2 on 表1.id号=表2.id号 只合并相同id号的记录,查询语句为: select 表1.字段1+表2.字段1,表2.字段2,表2.字段3 from 表1 inner join 表2 on 表1.id号=表2.id号

和布克赛尔蒙古自治县15529296583: 我准备学sql语言.sql语言入门的要领和步骤,心得方面的,请高手们说说,谢谢了. -
禄居抗病: 关键是要找一个数据库练手.SQL语言如果只是单纯的看的话,有的时候会感觉迷惑,所以,最好找一个数据库管理软件实际操作一下比较好,不同的数据库管理软件对标准的SQL语言的支持情况不同,如果能较好的操作一款DBMS,其他的就是触类旁通,相差不大.练习一下使用SQL语句进行数据库表的增删改查.推荐使用mysql,对标准SQL语言支持较好,具体操作可以找相关教程,有一本《mysql必知必会》比较适合入门

和布克赛尔蒙古自治县15529296583: MySQL新手如何快速入门 -
禄居抗病: 一、SQL速成以下是一些重要的SQL快速参考,有关SQL的语法和在标准SQL上增加的特性,请查询MySQL手册.1.创建表表是数据库的最基本元素之一,表与表之间可以相互独立,也可以相互关联.创建表的基本语法如下:create ...

和布克赛尔蒙古自治县15529296583: sql初学该从哪入手?
禄居抗病: 四个最基本的语句,增删改查.insert,delete,update,select

和布克赛尔蒙古自治县15529296583: 文科生零基础想学习SQL需要怎么做呢.? -
禄居抗病: 说在前面:SQL真的很简单很好学啊,完全不需要编程基础,1天之内立刻上手.首先花三分钟理清楚思路:1、SQL语句的基本结构就是:select a,b,c,d,e from tableA 解释为:从tableA这张表格中选择a,b,c,d,e这五个字段(表格的表头)的所有...

和布克赛尔蒙古自治县15529296583: 谁可以和我说说SQL要怎么入门啊?
禄居抗病: 装个SQL SERVER,学习基本的SQL语句,然后就学数据库编程!

和布克赛尔蒙古自治县15529296583: SQL新手使用 -
禄居抗病: 没明白你指的什么,对于sql2000的话,想必你已经知道如何使用企业管理器了,这里就不多说了,如果你指的是用sql语句操作数据库,想先选定数据库的话,那就这样: use database (其中,database是你要打开的数据库) 然后就可以写其他的sql语句了,比如select 语句等等. 如果你的意思是在.net环境下操作数据库的话,可以用sqlconnection对象操作.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网