概念
数据库: 存储数据的仓库,数据时有组织的进行存储的,DataBase (DB)
数据库管理系统: 操作和管理数据库的大型软件 DBMS
SQL: 操作关系型数据库的编程语言,定义了一套操作关系型数据库的统一标准。
数据模型

关系型数据库
- 概念:建立在关系模型基础上,由多张相互连接的二维表线组成的数据库
- 特点:
- 1.使用表存储数据,格式统一,便于维护
- 2.使用SQL语言操作,标准统一,使用方便

链接数据库
mysql -uroot -p
SQL
SQL通用语法
1.SQL语句可以单行或多行书写,以分号结尾。
2.SQL语句可以使用空格/缩进来增强语句的可读性。
3.MySOL数据库的SQL语句不区分大小写,关键字建议使用大写。
4.注释:
,单行注释:-注释内容或#注释内容(MySQL特有)
,多行注释:注释内容/
SQL 分类
- SQL 分类
DDL
显示表:
sql
show databases;
库创建
sql
CREATE DATABASE 【IF NOT EXISTS】 库名 【 CHARACTER SET 字符集名】;
表的创建
sql
CREATE TABLE 【IF NOT EXISTS】 表名 (
字段名 字段类型 【约束】,
字段名 字段类型 【约束】,
...
字段名 字段类型 【约束】
) ;
数据类型:
DQL
语法
sql
SELECT 查询列表 FROM 表名;
特点:
- 查询列表可以是字段、常量、函数、表达式
- 查询结果是一个虚拟表
示例:
sql
SELECT 字段名 FROM 表名;
SELECT 字段名,字段名 FROM 表名;
SELECT * FROM 表名; // 查询所有字段
SELECT 常量值;
- 起别名
sql
SELECT 字段名 AS "别名" FROM 表名;
例子;
1、查询工资>12000的员工信息
sql
SELECT * FROM employees WHERE salary > 12000 ;
2、查询员工编号=100的员工信息
sql
SELECT * FROM employees WHERE employee_id = 100 ;
3、查询工资>12000&&工资<18000的员工信息
sql
SELECT
*
FROM
employees
WHERE salary <= 12000 OR salary >= 18000 ;
4、查询工资<=12000||工资>=18000的员工信息
sql
SELECT
*
FROM
employees
WHERE NOT (salary > 12000 AND salary < 18000) ;
5、查询员工编号不在100到120之间的员工信息
sql
SELECT
*
FROM
employees
WHERE employee_id NOT BETWEEN 100 AND 120 ;
DML
用于数据库中表的数据记录进行增删操作
- insert
- update
- delete
|---|
| |
**插入语句:**( 加入一条新数据的意思 )
sql
#方式一:
INSERT INTO 表名(字段名,...) VALUES(值,...);
#方式二:
INSERT INTO 表名 SET 字段名=值,字段名=值,...;
插入数据(1):
sql
INSERT INTO beauty(id,name,sex,borndate,phone,photo,boyfriend_id)
VALUES(15,'唐艺昕','女','1997-12-05','15633029014',NULL,2);
插入数据(2):
sql
INSERT INTO beauty SET
id = 19,name = '张倩倩',
sex = '女',
borndate = '1997-12-05',
phone = '15633029014',
photo = NULL,
boyfriend_id = 3 ;
正式演示案例:

|---|
| |
表修改:

不带where限制关键字,则表示修改整张表

|---|
| |
删除语句
- 语法
sql
1、单表删除
DELETE FROM 表名 【WHERE 筛选条件 】;
2、多表删除(级联删除)
sql92语法:
DELETE
表1的别名,
表2的别名
FROM
表1 别名,
表2 别名
WHERE 连接条件 AND 筛选条件 ;
sql99语法:
DELETE
表1的别名,
表2的别名
FROM
表1 别名
INNER | LEFT | RIGHT JOIN 表2 别名 ON 连接条件
WHERE 筛选条件 ;