SQL简介

 

数据库的发展历程:

  • 网状型数据库
  • 层次型数据库
  • 关系数据库
  • 面向对象数据库

关系数据库是最成熟、使用最广泛的数据库。

面向对象数据库是由面向对象的编程语言催生的新型数据库,更加适合面向对象编程,但诞生时间较短,技术尚不成熟,还未大规模地应用于开发。

 

 

关系数据库分为2类:

  • 桌面数据库:适用于小型的、单机的程序,不需要网络和服务器,实现起来比较方便,但只提供数据存取的功能。常见的有Access。
  • 客户/服务器数据库:适用于大型的、多用户的数据库管理系统,客户端向用户显示信息及实现与用户的交互;服务器实现对数据库的操作和对数据的计算处理。服务器端一般包含DBMS(数据库管理系统),负责数据的存储、安全、一致性、并发、恢复、访问等操作。常见的有Oracle、MySQL、SQL  Server。

 

 

SQL,全称Structured  Query  Language,结构化查询语言。

SQL是操作关系数据库的标准语言,是所有关系数据库通用的。

SQL只是制定的一个标准,由具体的关系数据库厂商来实现,所以某些关系数据库可能不支持SQL中的少数语句。

 

各关系数据数据库在SQL基础上进行一些扩展,增加一些额外的功能,这些额外的功能是该种关系数据库特有的,只能对该种数据库使用。

如果想让程序跨关系数据库,尽量使用SQL,不要使用某种关系数据库特定的功能/语句。

 

 

数据表是存储数据的逻辑单元。

数据表中,一行称为一条记录,一列称为一个字段。

主键:唯一标识此条记录。

 

 

SQL语句大致可分为:

  • 查询语句:select
  • DML(Data  Manipulation  Language,数据操作)语句:操作记录,包括insert、update、delete。
  • DDL(Data  Definition  Language,数据定义)语句:操作数据库对象(一般是表、约束、索引、视图),包括create、alter、drop、truncate。
  • DCL(Data  Control Language,数据控制)语句:操作数据库用户权限,包括grant、revoke。
  • 事务控制语句:包括commit、rollback、savepoint。

SQL语句不区分大小写。

 

 

数据库对象:

  • 表table
  • 数据字典:即系统表,一张特殊的表,存储数据库的相关信息,一般由DBMS维护。
  • 约束constraint:执行数据校验,保证数据完整性
  • 视图view:表中数据的逻辑显示,视图本身并不存储数据
  • 索引index:相当于书的目录,用于提高查询性能
  • 函数function:完成一次特定的计算
  • 存储过程procedure:用于完成一次完整的业务处理
  • 触发器trigger:相当于一个事件监听器,当数据库发生特定事件后,触发器被触发,完成相应处理

函数、存储过程、触发器属于数据库编程的内容,需要大量使用数据库特性。

 

 

数据库标识符:

  • 用于定义表名、列名、变量名等
  • 可包含字母、数字、三个特殊字符(#_$),必须以字母开头
  • 不能使用当前数据库系统的关键字、保留字

通常使用多个单词连接而成,单词之间用下划线连接。

 

posted @ 2019-05-29 20:50  chenhongyong  阅读(...)  评论(... 编辑 收藏