MySQL备课宝典part_01(原老王SQL宝典)

今天早晨8点多,有已经毕业的学生联系我,问我要当初MySQL的授课笔记:
特梳理如下:

1. 终端操作快捷键
Ctrl + L 清屏
Ctrl + a 快速回到行首
Ctrl + e 快速回到行末
Ctrl + c + 回车   结束

2. 链接数据库命令
格式:
mysql -u用户名 -p密码
01携带密码登录(不安全)
mysql -uroot -pmysql
02不携带密码登录
mysql -uroot -p
musql

3. 退出数据库
01
exit
02
quit
03
Ctrl + d

4. 查看MySQL版本
select version();
+---------------------+
| version()           |
+---------------------+
| 5.7.21-1ubuntu1-log |
+---------------------+
1 row in set (0.00 sec)

5. 查看服务端所有数据库
show databases;

6. 创建数据库
格式:create database 数据库名 charset="utf8";
create database ai07 charset="utf8";

7. 切换/使用数据库
use 数据库名;
use ai07;

8. 查看当前所使用数据库
select database();
+------------+
| database() |
+------------+
| ai07       |
+------------+

9. 查看我们所创建的数据库
格式:show create database 数据库名;
show create database ai07;
+----------+---------------------------------------------------------------+
| Database | Create Database                                               |
+----------+---------------------------------------------------------------+
| ai07     | CREATE DATABASE `ai07` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+

10. 删除数据库
drop database 数据库名;

11. 查看数据表
show tables;

12.创建数据表
格式:create table 数据表名(字段 约束信息);

创建班级表
create table classes(
id int unsigned primary key auto_increment not null,
name varchar(30) not null
);

查看表结构
desc classes;
+-------+------------------+------+-----+---------+----------------+
| Field | Type             | Null | Key | Default | Extra          |
+-------+------------------+------+-----+---------+----------------+
| id    | int(10) unsigned | NO   | PRI | NULL    | auto_increment |
| name  | varchar(30)      | NO   |     | NULL    |                |
+-------+------------------+------+-----+---------+----------------+


创建学生表
create table students(
id int unsigned primary key auto_increment not null,
name varchar(30) not null,
age tinyint unsigned,
high decimal(5,2),
gender enum("男","女","保密") default "保密",
cls_id int unsigned,
foreign key(cls_id) references classes(id)
);

查看学生表结构
desc students;
+--------+----------------------------+------+-----+---------+----------------+
| Field  | Type                       | Null | Key | Default | Extra          |
+--------+----------------------------+------+-----+---------+----------------+
| id     | int(10) unsigned           | NO   | PRI | NULL    | auto_increment |
| name   | varchar(30)                | NO   |     | NULL    |                |
| age    | tinyint(3) unsigned        | YES  |     | NULL    |                |
| high   | decimal(5,2)               | YES  |     | NULL    |                |
| gender | enum('男','女','保密')     | YES  |     | 保密    |                |
| cls_id | int(10) unsigned           | YES  | MUL | NULL    |                |
+--------+----------------------------+------+-----+---------+----------------+
float(m,d)
m表示的是最大长度,d表示的显示的小数位数。
float的用法和decimal基本类似

create table students(
id int unsigned primary key auto_increment not null,
name varchar(30) not null,
age tinyint unsigned,
high decimal(5,2),
gender enum("男","女","保密") default "保密",
cls_id int unsigned,
foreign key(cls_id) references classes(id)
);

alter table students add score float not null;
alter table students add score float(3,1) not null;   此种方法使用时和decimal类似

13. 删除外键约束步骤
查看创建数据表信息
show create table students;
删除外键约束(外键名不加引号)
alter table students drop foreign key 外键名;  
alter table students drop foreign key students_ibfk_1;



14. 插入数据
01
insert into students values(0,"梧桐",18,188.88,"保密",1);
02
insert into students values(0,"梧桐",18,188.88,"保密",1),(0,"梧桐",18,188.88,"保密",1);
03
insert into classes(name) values("ai05"),("ai06"),("ai07");

15. 数据表字段操作
添加字段
alter table classes add chongwu varchar(30) not null;
修改字段名
alter table classes change chongwu monscat varchar(30) not null;
修改字段约束
alter table classes modify monscat varchar(50) not null;
删除字段
alter table classes drop monscat;

数据表重命名
alter table classes rename class;
alter table class rename to classes;

修改记录数据
update students set name="林双2",high=166.66 where age=28;
 
16. 删除记录数据
物理删除
delete from students where name = "林双2";
逻辑删除
alter table students add is_delete bit default 0;
update students set is_delete=1 where name = "林双";

17. 数据库备份
mysqldump -uroot -p 数据库名 > python.sql;
mysql -uroot -p 新数据库名 < python.sql;







  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值