第 4 节 SQL简介与数据表分析
SQL简介
SQL指的是结构化查询语言(Structured Query Language)。在世界上80年代的时候基本上存在有80多种数据库。这个时候有一个情况非常麻烦,每一种数据库都有自己的一套操作命令。这样一来给予开发者非常大的开发难度,因为习惯于使用A数据库的用户如果换到了B数据库,基本上就表示需要重新学习。
在70年代末的时候由IBM开发出了最早的SQK操作标准,而Oracle数据库是世界上第一个支持SQL语法的数据库,后来发展到今天,基本上所有的关系型数据库都支持SQL语法。
这样就带来了一个好处,即:如果你本身擅长于使用DB2数据库,那么就可以很轻松的上手Oracle数据库,或者是SQL Server数据库(MySQL)。
但是需要提醒的是,SQL语句语法没有那么复杂:SELECT、FROM、WHERE、GROUP BY、HAVING、ORDER BY、INSERT、UPDATE、DELETE、CREATE、DROP、ALTER、GRANT、REVOKE。
严格来讲SQL会分为三种类型:
DML(数据操作语言,开发中使用的部分):主要指的是数据库的查询与更新操作,查询操作是整个SQL的核心;
DDL(数据定义语言,开发前的设计):主要指的是数据对象的创建(表、用户),例如:CREATE、DROP、ALTER,这一部分的操作需要使用到相关的设计范式;
DCL(数据控制语言,系统人员工作):主要是进行权限的管理操作(需要结合用户),此部分由DBA负责;
SCOTT用户表的结构
SCOTT用户一共有四张数据表,这四张表的表结构为以后学习过程中使用的部分。首先了解以下两个命令:
**命令一:**查询一个用户下的所有数据表
**命令二:**查询一个表的结构
范例: 查看dept表结构
1、部门信息表:dept
1
DEPTNO
NUMBER(2)
表示部门编号,最多由2位数字所组成
2
DNAME
VARCHAR2(14)
表示部门名称,最多由14个字符所组成
3
LOC
VARCHAR2(13)
部门位置
2、雇员信息表:emp
1
EMPNO
NUMBER(4)
雇员编号,最多由4位数字所组成
2
ENAME
VARCHAR2(10)
雇员姓名
3
JOB
VARCHAR2(9)
雇员职位
4
MGR
NUMBER(4)
每个雇员的领导编号
5
HIREDATE
DATE
入职日期,里面包含有日期和时间
6
SAL
NUMBER(7,2)
基本工资,小数点最多只占2位,整数最多只占5位
7
COMM
NUMBER(7,2)
佣金,一般只有销售才会存在佣金的概念
8
DEPTNO
NUMBER(2)
部门编号,值的是每个雇员对应的雇员编号信息
3、工资等级表:salgrade
1
GRADE
NUMBER
工资等级编号
2
LOSAL
NUMBER
此等级的最低工资
3
HISAL
NUMBER
此等级的最高工资
工资等级里面的工资确定工资级别是要根据:losal<=工资<=hisal来决定。
4、工资表:bonus
1
ENAME
VARCHAR2(10)
雇员姓名
2
JOB
VARCHAR2(9)
职位
3
SAL
NUMBER
基本工资
4
COMM
NUMBER
佣金
在bonus表里面没有任何的数据存在。
总结
1、学习SQL重点在于DML操作上。
最后更新于