SQL学习教程
关于SQL学习教程
篇一:SQL学习教程
SQL 简介SQL 是用于访问和处理数据库的标准的计算机语言。什么是 SQL?? SQL 指结构化查询语言 ? SQL 使我们有能力访问数据库 ? SQL 是一种 ANSI 的标准计算机语言编者注:ANSI,美国国家标准化组织SQL 能做什么?? SQL 面向数据库执行查询 ? SQL 可从数据库取回数据 ? SQL 可在数据库中插入新的纪录 ? SQL 可更新数据库中的数据 ? SQL 可从数据库删除记录 ? SQL 可创建新数据库 ? SQL 可在数据库中创建新表 ? SQL 可在数据库中创建存储过程 ? SQL 可在数据库中创建视图 ? SQL 可以设置表、存储过程和视图的权限SQL 是一种标准 - 但是...SQL 是一门 ANSI 的标准计算机语言, 用来访问和操作数据库系统。 SQL 语句用于取回和更新数据库中 的数据。 SQL 可与数据库程序协同工作, 比如 MS Access、 DB2、 Informix、 MS SQL Server、 Oracle、 Sybase 以及其他数据库系统。 不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共 同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、
WHERE 等等)。 注释:除了 SQL 标准之外,大部分 SQL 数据库程序都拥有它们自己的私有扩展!在您的网站中使用 SQL要创建发布数据库中数据的网站,您需要以下要素:? RDBMS 数据库程序(比如 MS Access, SQL Server, MySQL) ? 服务器端脚本语言(比如 PHP 或 ASP) ? SQL ? HTML / CSSRDBMS
RDBMS 指的是关系型数据库管理系统。 RDBMS 是 SQL 的基础,同样也是所有现代数据库系统的基础,比如 MS SQL Server, IBM DB2, Oracle, MySQL 以及 Microsoft Access。 RDBMS 中的数据存储在被称为表(tables)的数据库对象中。表是相关的数据项的集合,它由列和行组成。SQL 语法数据库表一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据 的记录(行)。 下面的例子是一个名为 "Persons" 的表:IdLastNameFirstNameAddressCity1AdamsJohnOxford StreetLondon2BushGeorgeFifth AvenueNew York3CarterThomasChangan StreetBeijing上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。SQL 语句您需要在数据库上执行的大部分工作都由 SQL 语句完成。 下面的语句从表中选取 LastName 列的数据:SELECT LastName FROM Persons结果集类似这样:LastNameAdamsBush
Carter 在本教程中,我们将为您讲解各种不同的 SQL 语句。重要事项一定要记住,SQL 对大小写不敏感!SQL 语句后面的分号?某些数据库系统要求在每条 SQL 命令的末端使用分号。在我们的教程中不使用分号。 分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以 上的语句。 如果您使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些 数据库软件要求必须使用分号。SQL DML 和 DDL可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。 SQL (结构化查询语言)是用于执行查询的语法。 但是 SQL 语言也包含用于更新、 插入和删除记录的语法。 查询和更新指令构成了 SQL 的 DML 部分:? SELECT - 从数据库表中获取数据 ? UPDATE - 更新数据库表中的数据 ? DELETE - 从数据库表中删除数据 ? INSERT INTO - 向数据库表中插入数据SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之 间的链接,以及施加表间的约束。 SQL 中最重要的 DDL 语句:? CREATE DATABASE - 创建新数据库 ? ALTER DATABASE - 修改数据库 ? CREATE TABLE - 创建新表 ? ALTER TABLE - 变更(改变)数据库表 ? DROP TABLE - 删除表 ? CREATE INDEX - 创建索引(搜索键) ? DROP INDEX - 删除索引
SQL SELECT 语句SQL SELECT 语句SELECT 语句用于从表中选取数据。结果被存储在一个结果表中(称为结果集)。SQL SELECT 语法 SELECT 列名称 FROM 表名称以及:SELECT * FROM 表名称注释:SQL 语句对大小写不敏感。SELECT 等效于 select。SQL SELECT 实例如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用 类似这样的 SELECT 语句:SELECT LastName,FirstName FROM Persons"Persons" 表: Id LastName FirstName Address City1AdamsJohnOxford StreetLondon2BushGeorgeFifth AvenueNew York3CarterThomasChangan StreetBeijing结果: LastName FirstNameAdamsJohnBushGeorge CarterThomasSQL SELECT * 实例现在我们希望从 "Persons" 表中选取所有的列。 请使用符号 * 取代列的名称,就像这样:SELECT*FROM Persons提示:星号(*)是选取所有列的快捷方式。结果: Id LastName FirstName Address City1AdamsJohnOxford StreetLondon2BushGeorgeFifth AvenueNew York3CarterThomasChangan StreetBeijing在结果集(result-set)中导航由 SQL 查询程序获得的结果被存放在一个结果集中。大多数数据库软件系统都允许使用编程函数在结果 集中进行导航, 比如: Move-To-First-Record、 Get-Record-Content、 Move-To-Next-Record 等等。SQL SELECT DISTINCT 语句SQL SELECT DISTINCT 语句在表中,可能
会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。 关键词 DISTINCT 用于返回唯一不同的值。语法:SELECT DISTINCT 列名称 FROM 表名称使用 DISTINCT 关键词如果要从 "Company" 列中选取所有的值,我们需要使用 SELECT 语句:SELECT Company FROM Orders
篇二:如何学习SQL
如何学习SQL
在论坛中不断看到有新人问一些基础的问题。于是抽空整理了本帖,希望对新人有所帮助。
本文无意取代任何一本数据库或SQL的参考书,主要是提供一点学习方向的指导和技术心得的分享。地图和指南针并不能代替其它的野营工具,经验和心得也只能来自于亲身走过的旅途。
本文主要以SQL Server 2005的T-SQL为示例,但原理并不局限于这一平台。
由于全文过长,故拆分成四部分发帖:
Table of Content
第一部分:SQL基础
1. 为什么学习SQL
2. 学习SQL的参考资料
3. 几组基本概念
3.1. 单机数据库与服务器级数据库
3.2. 服务器(Server)与客户端(Client)
3.3. 数据库(DB)与数据库管理系统(DBMS)
3.4. SQL与SQL方言(dialect)
3.5. 语句、表达式和断言
4. SQL不同于一般编程语言的地方
4.1. SQL操作的是数据
4.2. SQL是基于集合的说明式语言
5. SQL的三个子集
第二部分:从关系角度理解SQL
6. 从关系角度理解SQL
6.1. 关系和表
6.2. 关系模型
6.3. 关系运算
6.4. 数据查询 6.5. 数据修改
数据库学习入门书籍6.6. 表的逻辑含义
第三部分:SQL数据类型与三值逻辑
7. 数据类型
8. NULL与三值逻辑
第四部分:DBMS扩展功能与SQL高级话题
9. DBMS提供的扩展功能
9.1. 控制流
9.2. 动态语句
9.3. DBMS支持的数据库对象
9.4. DBMS提供的系统函数、系统视图和系统存储过程
9.5. DBMS提供的工具
10. 高级话题
第一部分:SQL基础
1. 为什么学习SQL
自人类社会形成之日起,社会的运转就在不断地产生和使用各种信息(文献、档案、资料、数据等);在如今所谓的信息时代,由于计算机和互联网的作用,信息的产生和使用达到前所未有的广度和深度。如何管好和用好信息,是(而且将一直是)IT行业一块重要的领域。 在过去几十年中,关系数据库一直在这一领域占主导地位,而建立在关系理论基础之上的SQL也成为数据库领域的既定标准。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论