SQL 简介

来源:互联网 发布:payday2网络冲突 编辑:程序博客网 时间:2024/05/12 21:55

          从今天起,笔者将持续更新数据库相关的博客,先从基本的structure query language(SQL)开始,先忽略所有的数据库,从通用的SQL语言开始,毕竟有了普通话,走在中国的哪里都能活下去的是吧。

先来回答SQL 是干什么的这个问题,SQL是用于访问和处理数据库的标准的计算机语言。

什么是 SQL?

  • SQL 指结构化查询语言
  • SQL 使我们有能力访问数据库
  • SQL 是一种 ANSI 的标准计算机语言
  • SQL 面向数据库执行查询
  • SQL 可从数据库取回数据
  • SQL 可在数据库中插入新的纪录
  • SQL 可从数据库删除记录
  • SQL 很容易学习

编者注:ANSI,美国国家标准化组织

SQL 是一种标准 - 但是...

     SQL 是一门 ANSI 的标准计算机语言,用来访问和操作数据库系统。SQL 语句用于取回和更新数据库中的数据。SQL 可与数据库程序协同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他数据库系统。

不幸地是,存在着很多不同版本的 SQL 语言,但是为了与 ANSI 标准相兼容,它们必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。

注释:除了 SQL 标准之外,大部分 SQL 数据库程序都拥有它们自己的私有扩展!

SQL 数据库表

一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。

下面的例子是一个名为 "Persons" 的表(建议所有的SQL语句都用";"进行结尾,有始有终):

建表语句为(笔者以MySql数据库为例,其他的数据库也类似):

CREATE TABLE `persons` (
  `FirstName` varchar(50) DEFAULT NULL,
  `LastName` varchar(50) DEFAULT NULL,
  `Address` varchar(50) DEFAULT NULL,
  `City` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`FirstName`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

往表中插入几条记录进行练习使用:

INSERT INTO `persons` (FirstName,LastName,Address,City) VALUES ('Hansen', 'Ola', 'Timoteivn 10', 'Sandnes');

INSERT INTO `persons` (FirstName,LastName,Address,City) VALUES ('Svendson', 'Tove', 'Borgvn 23', 'Sandnes');

INSERT INTO `persons` (FirstName,LastName,Address,City) VALUES ('Pettersen', 'Kari', 'Storgt 20', 'Stavanger');

查看表中的记录:

SELECT FirstName,LastName,Address,City FROM persons;

LastNameFirstNameAddressCityHansenOlaTimoteivn 10SandnesSvendsonToveBorgvn 23SandnesPettersenKariStorgt 20Stavanger

上面的表包含三条记录(每一条对应一个人)和四个列(姓、名、地址和城市)。

SQL 查询程序

通过 SQL,我们可以查询某个数据库,并获得返回的一个结果集。

查询程序类似这样:

SELECT LastName FROM Persons;

结果集类似这样:

LastNameHansenSvendsonPettersen

SQL 数据操作语言 (DML)

SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

这些查询和更新语句都来自 SQL 的 DML 部分:

  • SELECT - 从数据库表中获取数据
  • UPDATE - 更新数据库表中的数据
  • DELETE - 从数据库表中删除数据
  • INSERT INTO - 向数据库表中插入数据

SQL 数据定义语言 (DDL)

SQL 的数据定义语言部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引
原创粉丝点击