目录
一.数据库的操作
注意:数据库中的语句,需要加上;来进行结尾。
1.显示当前数据库
语法:show databases;
2.创建数据库
(1)语法
create database 创建的数据库名;
注意事项:
这里如果创建的数据库已经存在,则会出现错误,为了避免这种情况,我们可以加上
if not exists ,如果不存在,就创建,否则就不创建.。
写法为:create database if not exists 数据库名;
(2)字符集的设置
创建数据库时我们一般需要设置指定字符集,因为某些字符集没有包含复杂的中文字符,如果我们采取默认的字符集,那么在使用中文的时候会出现错误。因此,这里我们使用的时utf8字符集,但是在mySQL中真正的utf8是使用了utf8mb4,所以,我们在创建数据库的时候建议指定字符集为utf8mb4。
(3)通过指定字符集来进行创建数据库的使用
语法:create database [if not exists] 数据库名 character set utf8mb4;
这里中括号的意思是里面的内容可以不加。
3.使用和删除数据库
(1)使用数据库的语法:use 数据库名;
(2)删除数据库的语法:drop database [if exists] 数据库名;
注意:删除数据库后,里面的表和数据就会被全部删除,在以后工作时操作时需要谨慎。
二.数据库的常用数据类型
在学习数据类型的时候,我们可以与Java中的数据类型对应起来进行学习。
1.数值类型
数据类型 | 大小 | 说明 | 对应Java中的类型 |
bit[(M)] | M为指定默认位数,默认为1 | 二进制数,M范围从1到64,存储数值范围从0~2^M-1 | 常用Boolean对应bit,此时默认为1位,对应0和1 |
tinyint | 1字节 | Byte | |
smallint | 2字节 | Short | |
int | 4字节 | Integer | |
bigint | 8字节 | Long | |
float(M,D) | 4字节 | 单精度,M指定长度,D指定小数位数,会发生精度损失 | Float |
double | 8字节 | Double | |
decimal(M,D) | M/D最大值+2 | 双精度,M指定长度,D指定小数点位数。精确数值 | BIgDecimal |
numeric | M/D最大值+2 | 与decimal一致 | BIgDecimal |
2.字符串类型
数据类型 | 大小 | 说明 | 对应Java类型 |
varchar | 0-65,535字节 | 可变长度字符串 | String |
text | 0-65,535字节 | 长文本数据 | String |
mediumtext | 0-16 777 215字节 | 中等长度文本数据 | String |
blob | 0-65,535字节 | 二进制形式的长文本数据 | byte[] |
3.日期类型
数据类型 | 大小 | 说明 | 对应Java类型 |
datetime | 8字节 | 范围从1000到9999年,不会进行时区的检索及转换 | java.util.Date、 java.sql.Timestamp |
timestamp | 4字节 | 范围从1970到2038年,自动检索当前时区并进行转换 | java.util.Date、 java.sql.Timestamp |
注意:日期类型为:yyyy-MM-dd HH:mm:ss
三.表的操作
数据库中的注释为:-- 所要注释的内容(--后面有一个空格)
在操作表时,需要先使用自己指定的数据库,然后再进行表的操作。
1.创建表
语法:
create table 表名(
字段名1 字段类型 comment '名字',
字段名2 字段类型
);
这里的comment是字段说明,也可以存储到数据库中
创建表的实例代码:
create table student (
id int,
name varchar(20),
password varchar(50),
age int,
gender varchar(1),
birthday timestamp,
amout decimal(13,2),
resume text
);
执行结果:
2.删除表
语法:drop table [if exists] 表名
将创建好的表进行删除
3.对表列的增删改操作
- 修改表名:alter table 原表名 rename to 新表名;
- 新增列:alter table 表名 add column 列名 varchar(20) ;
- 删除列:alter table 表名 drop column 列名;
- 修改列名: alter table 表名 change 原列名 新列名 varchar(20) ;
- 修改列属性:alter table 表名 modify 列名 varchar(20) ;
4.对表的外键约束进行设置
如果需要删除有外键约束的表中的数据,这时候我们首先需要该表进行如下设置
- 先对外键约束检查进行关闭
- 然后删除数据/表/视图
- 删除完成后再开启外键约束,以保持表的结构完整性