SQL简介和数据表分析

上一篇????:基本的SQLPus命令



????大家好!我是近视的脚踏实地,这篇文章主要是讲述SQL简介和数据表分析
     唯有行动  才能解除你所有的不安

1、SQL简介

SQL是整个数据库操作的灵魂所在,对于所有的数据库都支持SQL语法,同时为了考虑后边的学习,对于数据表的结构必须清楚记下。

1.1认识SQL

SQL(Structured Query Language:结构化查询语言)指的是结构化的查询语言。在70年代末到80年代初,世界上几乎有近80种数据库。但是就出现了一个问题,不同的数据库有自己不同的操作语法,也就是说如果你会使用A数据库,那么如果现在切换到B数据库上,基本上就是等于瞎子,又要从头学习B数据库的语法

后来IBM开发了一套标准的数据库操作语法,而全世界上只有Oracle数据库是最早提供这个语法支持的数据库(现在看来,当时的选择是正确的)。由于SQL语句的标准推广,到了现在的时候就已经成为了数据库的标准技术,也就是说现在几乎所有的数据库都支持SQL。

整个SQL语法之中实际上的组成只有20几个单词,但是在SQL大力发展的时代,还有一部分人就不使用SQL,这部分人认SQL让他们丧失了自我的创造力。就在整个行业之中产生了NOSQL数据库(不使用SQL数据库)。这一概念一直到大数据时代,NoSQL数据库火了,但是并不意味着不使用SQL的数据库,现在NoSQL(Not Only SQL)

对于SQL语句本身也分为若干个子类:

     1)DDL(Data Definition Language)数据定义语言
用来定义数据库对象:数据库,表,列等。关键字create,drop,alter等

     2)DML(Data Manipulation Language)数据操作语言
用来对数据库中表的数据进行增删改。关键字:insert。Delete,update

     3)DQL(Data Query Language)数据查询语言
用来查询数据库中表的记录(数据)。关键字:select,where等

     4)DCL(Data Control Language)数据控制语言(了解)
用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANT,REVOKE等

2、数据表分析

2.1scott用户表(背)

首先如果想要知道某一个用户下(模式)所有的数据表,那么可以使用如下语法完成????:
(用户和模式,严格来讲是两个概念,但是现在似乎不区分了)
select * from tab;
SQL简介和数据表分析
这里要注意登陆的是scott用户,此时结果中一共返回了四张数据表。但是要想知道每一张表的结构,则可以使用"desc 表名称",比如要想知道dept表的结构可以使用"desc dept"
SQL简介和数据表分析

2.1.1 部门表:dept

No 列名称 类型 描述
1 DEPTNO NUMBER(2) 部门编号,最多由两位数字组成
2 DNAME VARCHAR2(14) 部门名称,由14位字符组成(oracle是3个字符一个中国字,这里就是基本能存4个字)
3 LOC VARCHAR2(13) 部门位置

那么可以使用select * from dept; 来查看这个表的数据????:
SQL简介和数据表分析

2.1.2 雇员表:emp

这里同样先输入desc emp 查看表的结构????:
SQL简介和数据表分析

No 列名称 类型 描述
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) 基本工资,小数位最多是两位,整数是5位
7 COMM NUMBER(7,2) 佣金,销售人员才具备佣金
8 DEPTNO NUMBER(2) 所属的部门编号

那么可以使用select * from emp; 来查看这个表的数据????:
SQL简介和数据表分析
(其中第一个人叫smith,工资是最低的800,一个个叫king,工资是最高的,工资是5000,这是80年代初的工资,然后king是领导,所以他的MGR领导编号是空的)

2.1.3 工资等级表:salgrade

这里同样先输入desc salgrade 查看表的结构????:
SQL简介和数据表分析

No 列名称 类型 描述
1 GRADE NUMBER 工资等级编号
2 LOSAL NUMBER 此等级的最低工资
3 HISAL NUMBER 此等级的最高工资

那么同样可以使用select * from salgrade; 来查看这个表的数据????:
SQL简介和数据表分析

2.1.4 工资表:bonus

这张表用处不大,作为一个概念介绍而已,就在一些测试上会使用到,同样先输入desc bonus 查看表的结构????:
SQL简介和数据表分析

No 列名称 类型 描述
1 ENAME VARCHAR2(10) 雇员姓名
2 JOB VARCHAR2(9) 雇员职位
3 SAL NUMBER 雇员工资
4 COMM NUMBER 雇员佣金

那么同样可以使用select * from bonus; 来查看这个表的数据????:
SQL简介和数据表分析
在bonus表中现在没有任何的数据。这个是表是留给后边做测试用的

3、总结

总结:
1、查看某一用户全部数据表的命令要记住????:select * from tab;
2、查看表结构的命令要记住????:desc 表名称;
3、dept、emp、salgrade三张表的结构以及字段意义必须记下

本篇博客到这就完啦,非常感谢您的阅读????,如果对您有帮助,可以帮忙点个赞或者来波关注鼓励一下喔???? ,嘿嘿????