最近学习了MySQL数据库的相关知识,本文分享学习笔记。主要是Mysql数据库的相关操作。
作为学习使用,建议下载安装MySQL5.7版本,新的版本要收费。基本的SQL语句都是相同的,也没必要太纠结版本问题。至于用Windows还是Linux,反正使用的是MySQL Server,其实也没啥区别,就是下载安装的时候不太一样而已。我都下载了,但懒得开虚拟机,就在win10上进行学习使用,win10自带的CMD有点难看,我下载了Hyper这个小工具。
需要MySQL安装包和Hyper安装包的小伙伴可以评论留言给我。
一、数据库的基本操作
0、连接与初始化
连接mysql服务器:mysql -u root -p
创建date文件夹:mysqld --initialize-insecure --user=root
1、启动服务与暂停服务(需要管理员身份运行终端)
net stop mysql57
net start mysql57
2、显示当前数据库的所有内容
show databases;
初始的4个库:
information_schema整个数据库的信息
mysql用户信息
performance_schema服务器性能信息
sys系统文件信息
3、创建数据库
create database 库名;
库名不可重复,不要使用关键字(使用``可以强制命名),大小写不敏感
create database if not exists `库名`; 当该库不存在时,创建该库
4、删除数据库
drop database 库名;
drop database if exists 库名; 当该库存在时,删除该库
5、查看创建数据库的SQL语句
show create database 库名;
6、创建数据库指定字符编码以及查看数据库的字符编码
常见字符编码格式:GBK(简体中文、windows下用)、UTF-8(国际通用、linux下用)
create database if not exists `库名` charset=字符编码格式;
7、修改数据库字符编码
alter database 要修改的库名 charset=编码格式;
二、表的基本操作
1、引用数据库和查看数据库中的表
use 库名; 选中要使用的库
show tables; 显示该库下所有的表
2、创建表
方式1:
create table 表名(内容1 数据类型,内容2 数据类型,...);
内容1,内容2,内容3...叫字段
方式2:
create table if not exists 表名(
字段1 数据类型 auto_increment primary key comment '注释',
字段2 数据类型 not null,
字段3 数据类型 default '默认值',
...)engine=innodb;
auto_increment 使该字段自动增长
primary key 主键(该字段是唯一的,不能重复,必须填)
comment '注释' 对该字段的描述解释
not null 该字段不能为空
default '默认值' 如果没填该字段,就将默认值填入该字段
engine=innodb 数据库引擎设置为innodb
show create table 表名; 查看创建table的SQL语句
3、查看表结构
desc 表名;
4、删除表
drop table if exists 表名;
5、修改表
alter table 表名 add 字段名 数据类型; 添加字段
alter table 表名 add 字段名1 数据类型 after 字段名2; 在指定位置添加字段(在字段2后面添加字段1)
alter table 表名 drop 字段名; 删除指定字段
alter table 表名 change 原字段名 新字段名 新数据类型; 修改字段名与数据类型
alter table 表名 modify 字段名 新数据类型; 只修改字段的数据类型
alter table 原表名 rename to 新表名; 修改表名