1、连接数据库
mysql -h ip地址 -P 端口号 -u 用户名 -p 密码
2、显示所有数据库
show databases;
3、创建数据库
create database 数据库名字 default charset=utf8;
4、使用数据库
use 数据库名字;
5、删除数据库
drop 数据库名字;
6、备份和恢复数据库
mysqldump -h 192.168.11.29 -u root -p 1810_db > ./1810_db.sql
mysql -h 192.168.11.29 -uroot -p laowang < ./1810_db.sql
6、查询数据库下所有的表
use 数据库名;
show tables;
7、创建表
create table 表名(
列名 类型,
列名 类型,
列名 类型
);
8、常用的类型
数字 int,float,decimal
字符串 char,varchar,longtext
日期 date,datetime
9、删除表
drop table 表名
10、约束
1、主键约束
2、非空约束
3、唯一约束
4、默认约束
5、外键约束
/*外键表*/
create table student(
id int primary key,
name varchar(100) not null,
idcard char(18) unique,
addres varchar(100) default '郑州',
gid int not null,
foreign key(gid) references grade(id)
);
/*主键表*/
create table grade(
id int primary key,
name varchar(100) not null
);
11、描述表的信息
desc 表名
12、显示表的创建sql语句
show create table 表名
13、主键的生成策略
1、int 自动增长 auto_increment
2、字符串 uuid 了解
create table grade(
id int auto_increment primary key,
name varchar(100) not null
);
create table grade2(
id char(36) primary key,
name varchar(100) not null
);
insert into grade(name) values('a');
insert into grade(name) values('b');
insert into grade2(id,name) values(uuid(),'a');
insert into grade2(id,name) values(uuid(),'b');
14、基本的增删改查
create table student(
id int auto_increment primary key,
name varchar(100) not null,
sex char(1) not null,
address varchar(100) default '郑州',
phone varchar(11),
birthday date
);
insert into student(name,sex,address,phone,birthday) values('老王','男','开封','11111111111','1998-2-2');
select * from student;
select name,phone from student;
select name 姓名,phone 电话 from student;
delete from student where id = 3;
update student set address='开封' where id = 5;
update student set sex='女',address='曼谷' where id = 5;
UPDATE
student
SET
sex='女',address='曼谷'
WHERE
id = 5;
15、单表查询
/*1、查询所有EMP信息*/
select * from EMP;
/*2、查询所有job*/
select job from EMP;
/*3、去重:查询所有job*/
select distinct job from EMP;
/*4、去重:查询所有deptno,job的组合*/
select distinct deptno,job from EMP;
/*5、条件:查询工资大于2000的*/
select * from EMP where sal > 2000;
/*6、条件:查询工资大于2000的并且部门编号是10的*/
select * from EMP where sal > 2000 and deptno = 10;
/*7、条件:查询工资2000-3000之间的*/
select * from EMP where sal >= 2000 and sal <= 3000;
select * from EMP where sal between 2000 and 3000;
/*8、模糊&