数据库的备份和还原与多表查询_概述
数据库的备份和还原
数据库的备份和还原
1.命令行
备份:mysqldump -u用户名 -p密码 数据库名称>保存的路径
将我们原来数据库中的数据删除
登录数据库
查询数据库
将win1进行删除
win1已经被删除
还原:
1.登录数据库
2.创建数据库
创建一个数据库
3.使用数据库
使用win1数据库
4.执行文件 。source文件路径
还原原来win1中的数据
还原成功
2.图形化工具
选择数据库
多表查询_概述
查询语法:
selcet
列名列表
from
表名列表
where....
创建数据库和表结构的代码如下:
准备sql
CREATE DATABASE Journey; -- 创建Journey数据库 USE Journey; -- 使用Journey数据库 ALTER DATABASE Journey CHARACTER SET utf8; DROP TABLE dept; # 创建部门表 CREATE TABLE dept( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(20) ); INSERT INTO dept (NAME) VALUES ('开发部'),('市场部'),('财务部'); SELECT *FROM dept; # 创建员工表 CREATE TABLE emp ( id INT PRIMARY KEY AUTO_INCREMENT, NAME VARCHAR(10), gender CHAR(1), -- 性别 salary DOUBLE, -- 工资 join_date DATE, -- 入职日期 dept_id INT, FOREIGN KEY (dept_id) REFERENCES dept(id) -- 外键,关联部门表(部门表的主键) ); INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES('孙悟空','男',7200,'2013-02-24',1); INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES('猪八戒','男',3600,'2010-12-02',2); INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES('唐僧','男',9000,'2008-08-08',2); INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES('白骨精','女',5000,'2015-10-07',3); INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES('蜘蛛精','女',4500,'2011-03-14',1); SELECT * FROM emp;
笛卡尔积:
有两个集合A,B .取这两个集合的所有组成情况。
要完成多表查询,需要消除无用的数据。
多表查询的分类
1.内连接查询
2.外连接查询
3.子查询