基础概念
- SQL
SQL是基于数据库的一种高级语言,实现对数据的各种操作,关系型数据库的一种标准,也就是 SQL语言对所有符合协议标准的都是通用的 - DB( DataBase)
数据库是数据的集合,存储在文件系统中,以文件形式存在 - DBMS(DataBase Management System)
数据库管理系统就是我们常说的mysql、oracle、db2等等
数据库(DBMS)的种类(常见)
- 关系型数据库
通过二维表的形式建立多张表,建立成的数据库
通过关联可以查询到张三的老师和成绩
关系型数据库组成结构发展
结构的目的就是为了怎么快速和方便的找到需要的数据
- 层次结构
- 按照一层一层的分级,找数据避免就要一层一层走,导致需要走没必要的层级
- 网状结构
- 对于层次结构做了优化,数据上下左右4层都可以走,但是效果还是不好,还是要走没有必要的层
- 关系结构(目前都是基于关系结构)
- 也就是基于二维表结构,就是我们使用的execl表格,这个好处就完全需要找什么,就找什么
- 非关系型数据库
非关系型数据库以键值对存储,且结构不固定,每一个元组可以有不一样的字段
sql语言5大分类
- DQL(数据查询语言) - Select 查询语句不存在提交问题。(Data Query Language)
- DML(数据操纵语言) - Insert、Update、Delete 这些语句需要Commit才能提交。(DataManipulation Language)
- DDL(数据定义语言) - Create、Alter、Drop 这些语句自动提交,无需用Commit提交。(Data Definition Language)
- DTL(事务控制语言) - Commit、Rollback 事务提交与回滚语句。(Transaction Control Language)
- DCL(数据控制语言) - Grant、Revoke 授予权限与回收权限语句。(Data Control Language)
增删改查是目前最常用的,也是必须会的,是对数据的操作,包含的就是DQL和DML
DDL针对的是表结构的操作,并不是数据,所有不是常用,因为表格在数据之前就已经定义好的,不常见修改
DTL是一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行,维护数据的完整性
DCL用于用户的权限的分配和回收
注意:数据库(DBMS)的操作命令和sql语句需要区分开
操作命令:show databases; create database ABC; ues ABC;等等
sql语句:CREATE TABLE table_name (column_name column_type);
区分:sql是针对表的操作