SQL

认识SQL

(1) 什么是SQL?
1.SQL 指结构化查询语言
2.SQL 使我们有能力访问数据库
3.SQL 是一种 ANSI 的标准计算机语言(注意:ANSI,美国标准)

(2) SQL能做什么?
SQL 面向数据库执行查询
SQL 可从数据库取回数据
SQL 可在数据库中插入新的记录
SQL 可更新数据库中的数据
SQL 可从数据库删除记录
SQL 可创建新数据库
SQL 可在数据库中创建新表
SQL 可在数据库中创建存储过程
SQL 可在数据库中创建视图
SQL 可以设置表、存储过程和视图的权限

(3) 数据库系统
什么是数据库?举个例子来说明这个问题:每个人都有很多亲戚和朋友,为了保持与他们的联系,我们常常用一个笔记本将他们的姓名、地址、电话等信息都记录下来,这样要査谁的电话或地址就很方便了。这个“通讯录”就是一个最简单的“数据库”,每个人的姓名、地址、电话等信息就是这个数据库中的“数据”。我们可以在笔记本这个“数据库”中添加新朋友的个人信息,也可以由于某个朋友的电话变动而修改他的电话号码这个“数据”。不过说到底,我们使用笔记本这个“数据库”还是为了能随时査到某位亲戚或朋友的地址、邮编或电话号码这些“数据”。
数据库(Database)是按照数据结构来组织、储存和管理数据的建立在计算机存储设备上的仓库。
MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统(PS:好多我也没用过。)
他们都有一些相似的地方,比如(SELECT、UPDATE、DELETE、INSERT、WHERE 等等),当然大多数据库都有自己的扩张。可以了解了解。

(4) 数据库表
一个数据库通常包含一个或多个表。每个表由一个名字标识(表名),表是相关的数据项的集合,它由列和行组成。

  1. 字段:
    每个表都可以分解为更小的项。这些项被称为“字段”。字段是表里的一列,用于保持每条记录的特定信息。
  2. 记录或一行数据:
    记录,也被称为一行数据,是表里的各行。在关系型数据库的表里,一行数据是指一条完整的记录。
  3. 列:
    列是表里的垂直的一项,包含表里特定字段的全部信息。
  4. 主键:
    主键用于区分表里的每一条数据,它通常是在表创建过程中初始化的。主键的特性确保了每一条记录都是唯一的。
  5. NULL值:
    NULL 是表示“没有值”的专用术语。如果表中某个字段的值是NULL,其表现形式就是字段为空,其值就是没有值。NULL并不等于0或空格。值为NULL的字段在表创建过程中会保持为空。
  6. 索引:
    为了提高访问数据库的效率,可以对数据库使用索引。当数据库较大时,为了查找指定的记录,则使用索引和不使用索引的效率有很大差别。索引实际上是一种特殊类型的表,其中含有关键字段的值(由用户定义)和指向实际记录位置的指针,这些值和指针按照特定的顺序(也由用户定义)存储,从而可以以较快的速度查找到所需要的数据记录。

数据库语言

SQL
DML(数据库操作语言)
DDL(数据库定义语言)
DQL(数据库查询语言)
DCL(数据库控制语言)

  1. SQL DML
    用于更新、删除和插入记录的语法。
    UPDATE - 更新数据库表中的数据
    DELETE - 从数据库表中删除数据
    INSERT INTO - 向数据库表中插入数据
  2. SQL DDL
    用于创建或删除表格,也可以定义索引(键),规定表之间的关系,以及添加表间的约束。
    CREATE DATABASE - 创建新数据库
    ALTER DATABASE - 修改数据库
    CREATE TABLE - 创建新表
    ALTER TABLE - 变更(改变)数据库表
    DROP TABLE - 删除表
    CREATE INDEX - 创建索引(搜索键)
    DROP INDEX - 删除索引
  3. SQL DQL
    用于执行查询的语法,基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块。
    SELECT <字段名>
    FROM <表名或视图>
    WHERE <条件>
  4. SQL DCL
    用于创建与用户访问相关的对象,以及控制用户的权限
    ALTER PASSWORD
    GRANT <授权>
    REVOKE
    CREATE SYNONYM