一.启动服务并登陆MySQL数据库
1.开启数据库服务
net start 数据库名
2.关闭数据库服务
net stop 数据库名
二.数据库的基本操作
1.查看当前所有存在的数据库
SHOW DATABASES;
2.创建数据库
CREATE DATABASE 数据库名;
3.查看数据库的定义
SHOW CREATE DATABASE 数据库名;
4.删除指定数据库
DROP DATABASE 数据库名;
5.查看系统所支持的所有引擎类型
SHOW ENGINES;
6.查看默认储存引擎
SHOW VARIABLES LIKE '%storage_engine%';
7.看某个表用了什么引擎
SHOW CREATE TABLE 数据表名;
8.使用(切换)某一个数据库
USE 数据库名;
三.数据表的基本操作
(一)创建数据表和约束
1.创建数据表语句
CREATE TABLE 数据表名(
字段名1 字段类型 [列级别约束条件] [默认值],
字段名2 字段类型 [列级别约束条件] [默认值],
......
[表级别约束条件]
);
2.查看数据表
SHOW TABLES;
3.使用主键约束
(1)单字段主键:
//每一列之后
Method1:字段名1 字段类型 PRIMARY KEY [默认值],
//所有列之后
Method2:[CONSTRAINT 约束名] PRIMARY KEY (字段名)
Method3:PRIMARY KEY (字段名)
// ()不可省略
(2)多字段联合主键
//所有列之后
[CONSTRAINT 约束名] PRIMARY KEY (字段名1,字段名2....)
4.使用外键约束
//所有列之后
[CONSTRAINT 外键约束名] FOREIGN KEY (从表字段名1,从表字段名2...) REFERENCES 主表名 (主表字段名1,主表字段名2...)
5.使用非空约束
//每一列之后
字段名 字段类型 NOT NULL [默认值],
//不能再所有列之后添加此命令
6.唯一性约束
//每一列之后
字段名 字段类型 UNIQUE [默认值],
//所有列之后
[CONSTRAINT 约束名] UNIQUE (字段名1,字段名2...)
UNIQUE和PRIMARY KEY的区别
7.使用默认约束
字段名 字段类型 [列级别约束条件] DEFAULT 默认值,
8.表的属性自动增加
字段名 字段类型 AUTO_INCREMENT,
####该字段必须为主键的一部分,AUTO_INCREMENT约束的字段可以是任何整数类型。
9.创建外键约束
ALTER TABLE 从表名 ADD CONSTRAINT 外键约束名 FOREIGN KEY (从表字段名) REEFERENCES 主表名 (主表字段名);
(二)查看数据表结构
1.查看表基本结构语句DESCRIBE
DESCRIBE 表名;
或者
DESC 表名;
2.查看表详细结构信息
SHOW CREATE TABLE 表名;
(三)修改数据表
1.修改表名
ALTER TABLE 旧表名 RENAME [TO] 新表名;
2.修改字段的数据类型
ALTER TABLE 表名 MODIFY 字段名 需要的数据类型 [可添加约束,默认值];
3.修改字段名
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型 [可添加约束,默认值];
4.添加字段
ALTER TABLE 表名 ADD 新字段名 数据类型 [可添加约束,默认值] [FIRST | AFTER 字段名];
5.删除字段
ALTER TABLE 表名 DROP 字段名;
####只能一次删除一个字段
6.改变表的排序位置
ALTER TABLE 表名 MODIFY 需要更改位置的字段名 数据类型 [可添加约束,默认值] [FIRST | AFTER 字段名];
7.改变表的存储引擎
ALTER TABLE 表名 ENGINE = 新的存储引擎;
8.删除表的外键约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名:
(四)删除数据表
1.删除没有被关联的数据表
DROP TABLE [IF EXISTS]表名1,表名2... ;
2.删除被其他表关联的数据表
####此时不能直接删除主表,会报错。
Method1:先删除从表后,在删除主表。
DROP TABLE 从表名; 之后 DROP TABLE [IF EXISTS] 主表名;
Method2:先删除外键约束,就可以直接删除主表,这样从表不需要被删除。
ALTER TABLE 从表名 DROP FOREIGN KEY 外键约束名;
之后:
DROP TABLE [IF EXISTS] 主表名;