一、登录退出数据库
1.登录
mysql -u 用户名 -p
mysql -u root -p123456
2.退出
quit 或 \q
二、库操作
1.创建数据库
create database 库名;
create database school;
2.删除数据库
drop database 库名;
drop database school;
3.查看所有库
show database 库名;
show database school;
三、表操作
1. 创建表:(主键,外键,非空,唯一,自增,默认值)
create table 表名(属性名 数据类型 [完整性约束条件],
属性名 数据类型 [完整性约束条件],
...
属性名 数据类型 [完整性约束条件],
);
主键:属性名 数据类型 primary key
外键:constraint 外键名 foreign key 字段名 references 主表名(主键列名)
非空:属性名 数据类型 not null
唯一:属性名 数据类型 unique
自增:属性名 数据类型 auto_increment
默认值:属性名 数据类型 属性名 数据类型 default 默认值
create table student(stu_id int primary key auto_increment,
stu_name varchar(20) not null,
stu_sex boolean
);
create table course(course_id int primary key,
course_name char(10) unique
);
create table sc(stu_id int,
course_id int,
grade float default 0,
primary key(stu_id,course_id),
constraint fk foreign key(stu_id) references student(stu_id)
);
2.查看表结构
describe 表名;
describe student;
3.查看表详细结构语句
show create table 表名;
show create table student;
4.修改表
1)修改表名
alter table 旧表名 rename 新表名;
alter table student rename stu;
2)修改字段数据类型
alter table 表名 modify 属性名 数据类型;
alter table student modify stu_name varchar(30);
3)修改字段名
alter table 表名 change 旧属性名 新属性名 新数据类型;
alter table student change stu_name name varchar(20);
4)增加字段
alter table 表名 add 属性名1 数据类型 [完整性约束条件] [first|after 属性名2];
alter table user add phone varchar(12);
alter table user add phone varchar(12) not null;
alter table user add id int primary key first;
alter table user add address varchar(30) not null after phone;
5)删除字段
alter table 表名 drop 属性名;
alter table user drop address;
6)修改字段排列位置
alter table 表名 modify 属性名1 数据类型 first|after 属性名2;
alter table user modify name varchar(30) first;
alter table user modify sex tinyint(1) after age;
7)更改表的存储引擎
alter table 表名 engine=存储引擎
alter table user engine=MyISAM;
8)删除表的外键约束
alter table 表名 drop foreign key 外键别名;
alter table example drop foreign key e_fk;
4.删除表
1)删除普通表
drop table 表名
drop table user;
2)删除被其他表关联的父表
先删除外键约束
alter table 表名 drop foreign key 外键别名;
alter table user drop foreign key u_fk;
然后删除普通表