目录

  • 1. 启动服务和登陆mysql
  • 2. 数据库基本操作
  • 2.1 创建数据库
  • 2.2 查询数据库
  • 2.3 修改数据库
  • 2.4 删除数据库
  • 2.5 使用数据库
  • 3. 表的基本操作
  • 3.1 创建表
  • 3.2 查询表
  • 3.3 修改表
  • 3.4 删除表


1. 启动服务和登陆mysql

启动服务

net start mysql<服务名>

停止服务

net stop mysql<服务名>

查看mysql版本

mysqladmin --version

登陆数据库

mysql -u root<用户名> -p

退出数据库

exit或quit

数据目录

datadir="C:/ProgramData/MySQL/MySQL Server 5.7/Data/"

2. 数据库基本操作

2.1 创建数据库

创建数据库

create database test_db

创建数据库,判断不存在,再创建

create database if not exists test_db

创建数据库并指定字符集

create database test_db character set UTF-8
2.2 查询数据库

查询所有数据库名称

show databases

查询某个数据库

show create database test_db
2.3 修改数据库

修改数据库的字符集

alter database test_db character set UTF8;
2.4 删除数据库

删除数据库

drop database test_db

判断数据库存在,存在再删除

drop database if exists test_db
2.5 使用数据库

查询当前使用的数据库

select database()

使用数据库

use test_db

3. 表的基本操作

3.1 创建表
create table <表名>(
字段名1 数据类型 [列级别约束条件] [默认值],
字段名2 数据类型 [列级别约束条件] [默认值],
......
[表级别约束条件]
//注:最后一行不需要逗号“,"
);

关于约束和数据库数据类型,后面再讲

例子

create table tb_empl(
    -> id int(11),
    -> name varchar(25),
    -> depId int(11),
    -> salary float
    -> );

设置表的属性自动增加

create table tb_empl(
    -> id int(11) primary key auto_increment,
    -> name varchar(25),
    -> depId int(11),
    -> salary float
    -> );
3.2 查询表

查询某个数据库中所有的表

show tables

查询某个表的数据结构

desc <表名>

查看某个表的详细信息

show create table <表名>
3.3 修改表

修改表名

alter table oldName rename [to] newName;

修改字段的数据类型

alter table <表名> modify <字段名> <数据类型>;

修改字段名

alter table <表名> change <旧字段> <新字段名> <新数据类型>;

添加字段

alter table <表名> add <新字段名> <数据类型> [约束条件] [first|after 已存在的字段名]

① 添加无完整性约束条件的字段

alter table tb_empl add phone varchar(32);

② 添加有完整性约束条件的字段

alter table tb_empl phone varchar(32) not null;

③ 在表的第一列添加一个字段

alter table tb_empl add phone varchar(varchar) first;

④ 在表的制定列之后添加一个字段

alter table tb_empl add phone varchar(32) after name;

删除字段

alter table <表名> drop <列名>

修改字段的排列位置

alter table <表名> modify <字段1> <数据类型> first|after <字段2>

① 修改字段为表的第一列

alter table tb_empl modify name  first;

② 修改字段到表的指定列之后

alter table tb_empl modify name varchar(32) after no;

更改表的存储引擎

alter table <表名> engine=<修改后的引擎名>;

删除表的外键约束

alter table <表名> drop foreign key <外键约束名>

修改字符集

alter table <表名> character set <字符集名称>;
3.4 删除表

删除没有被关联的表

drop table [if exists] 表1,表2,...表n;

删除被其它表关联的主表

数据表之间存在外键关联的情况下,如果直接删除父表,结果会显示失败,原因是直接删除,将破坏表的参照的完整性,如果必须要删除,有以下两种方法:

① 先删除子表,再删除父表,如果要保留子表,可以用下面的方法

② 将关联表的外键约束取消