热线电话:13121318867

登录
2020-06-01 阅读量: 1632
mysql 应用操作学习

-- 查看系统中有哪些数据库

show databases;

-- 创建test数据库

create database test;

-- 选择进入数据库

use test;

-- 删除数据库(慎用)

-- drop database test;

-- 创建数据表

create table department(deptno int,

dname varchar(10),

loc varchar(10));

-- 查看当前数据库中有哪些表

show tables ;

-- 查看表结构

desc department;

-- 删除数据表(慎用)

-- drop table department;

-- 创建带有约束条件的表(因为两张表中有主外键约束,所以需要先创建主键所在的dept,再创建外键所在的emp)

show tables ;

desc department;

create table dept(

deptno int primary key,

dname varchar (10),

loc varchar(10));

create table employee(

empid int primary key auto_increment,

ename varchar(10) unique,

job varchar(10) not null,

mgi int,

hiredate date,

sal float default 0,

comm float,

deptno int,

foreign key(deptno) references dept(deptno));

desc employee;

-- 修改表名

alter table employee rename emp;

show tables;

-- 修改字段名

alter table emp change empid empno int auto_increment;

desc emp;

-- 修改字段类型

alter table emp modify sal int default 0;

desc emp;

-- 添加字段

alter table emp add city varchar(10);

-- 修改字段的排列位置:

alter table emp modify city varchar(10) first;

alter table emp modify city varchar(10) after job;

desc emp;

-- 删除字段

alter table emp drop city;

desc emp;

-- 插入数据:字段名与字段值的数据类型、个数、顺序必须一一对应

insert into dept(deptno,dname,loc) values (10,'accounting','new york'),(20,'research','dallas');

insert into dept values (30,'sales','chicago'),(40,'operations','boston');

select * from dept;

-- 批量导入数据(路径中不能有中文,‘\’在编程语言中是转义符,需要将‘\’改为‘\\’或‘/’)

-- 先有部门,才能存储每个部门的员工信息,所以先添加dept的部门信息,再导入emp的员工信息

show variables like '%secure%';

load data infile "C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/employee.csv"

into table emp

fields terminated by ','

ignore 1 lines;

select * from emp; -- 检查导入数据内容

select count(*) from emp; -- 检查导入数据总行数

-- 更新数据

-- set sql_safe_updates=0; -- 设置数据库安全权限

-- 10号部门员工的基本工资加1000

update emp set sal=sal+1000 where deptno=10;-- 先执行where deptno 满足条件就返回1 就执行update 的命令

-- 条件不成立就不执行 返回条件为0

-- 不加where deptno 就是所有都加1000

-- 记得打开权限 set sql_safe_updates=0;

-- 删除数据 删除30号部门的员工

delete from emp where deptno=30;

-- 清空数据

truncate emp;

load data infile "C:/ProgramData/MySQL/MySQL Server 8.0/Uploads/employee.csv"

into table emp

fields terminated by ','

ignore 1 lines;

-- 单表查询(虚拟结果集)

select * from emp;

-- 查询指定列:查询emp表中ename,job,sal 查询不会修改表中的记录 只是返回一个信息给你观看而已

select ename,job,sal from emp;

-- 设置别名:查询每位员工调整后的薪资(基本工资+1000) as关键字可以省略

select * , sal+1000 as "调薪" from emp;

-- 练习:查询每位员工的年薪(基本工资*12):empno,ename,年薪

select empno,ename,sal*12 as "年薪" from emp;

-- 查询不重复的数据:查询emp表中有哪些部门

select distinct deptno from emp;

-- 查询emp表中每个部门有哪些职位

select distinct deptno,job from emp;

27.2454
2
关注作者
收藏
评论(1)

发表评论
半世清欢
2020-06-01
厉害,欢迎回访
0.0000 0 0 回复
推荐帖子
条评论