文章目录
🎪 MySQL数据库基础
这里使用的是cmd命令行登录MySQL数据库。
🚀1.cmd登录MySQL
登录指令: mysql -u root -p
注意中间空格不能掉哦。
🚀 2.数据库操作
⭐2.1 显示当前数据库
显示当前数据库名: show databases;
⭐2.2 创建数据库
创建数据库: create database [If not exists]
数据库名
[character set];
● []表示可选内容
● [character set]表示用指定的字符即创建数据库
create database java - 创建名为java的数据库
create database if not exists java1 - 如果不存在名为java的数据库,则创建名为java1的数据库
create database if not exists java2 character set utf8mb4 - 如果不存在名为java的数据库,则创建名为java1的数据库
注意:MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是使用utf8mb4,建议大家都使用utf8mb4
⭐2.3 数据库的使用与删除
数据库的使用:use
数据库名
;
数据库的删除:drop database
数据库名
;
drop database if exists java; - 删除名为java的数据库如果存在
🚀 3.常用数据类型
⭐3.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字节 | 整型 | Int |
BIGINT | 8字节 | 长整型 | Long |
FLOAT(M,D) | 4字节 | 单精度,M指定长度,D指定 小数位数。会发生精度丢失 | Float |
DOUBLE(M,D) | 8字节 | 双精度浮点型 | Double |
DECIMAL(M,D) | M/D最大值 + 2 | 双精度,M指定长度,D表示 小数点位数。精确数值 | BigDecimal |
NUMERIC(M,D) | M/D最大值 + 2 | 和DECIMAL一样 | BigDecimal |
扩展资料:
● 数值类型可以指定为无符号(unsigned),表示不取负数。
● 1字节(bytes)= 8bit。
对于整型类型的范围:
- 有符号范围:-2(类型字节数*8-1)到2(类型字节数*8-1)-1,如int是4字节,就
是-2^31到 2^31 -1 - 无符号范围:0到2(类型字节数*8)-1,如int就是232-1
尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。(SQL语言中定义数据类型跟java是相反的,SQL语言中用int unsigned
;
⭐3.2 字符串类型
数据类型 | 大小 | 说明 | 对应java类型 |
---|---|---|---|
VARCHAR (SIZE) | 0-65,535字节 | 可变长度字符串 | String |
TEXT | 0-65,535字节 | 长文本数据 | String |
MEDIUMTEXT | 0-16 777 215字节 | 中等长度文本数据 | String |
BLOB | 0-65,535字节 | 二进制形式的长文本数据 | byte[] |
⭐3.3 日期类型
数据类型 | 大小 | 说明 | 对应java类型 |
---|---|---|---|
DATETIME | 8字节 | 范围从1000到9999年,不会进行时区的 检索及转换 | java.util.Date、 java.sql.Timestamp |
TIMESTAMP | 4字节 | 范围从1970到2038年,自动检索当前时 区并进行转换 | java.util.Date、 java.sql.Timestamp |
🚀 4.表的操作
注意:表操作的前提是选择数据库,use 数据库
;
⭐4.1 查看表
查看表:desc
表名
;
⭐4.2 创建表
查看表:
CREATE TABLEtable_name
(
field1 datatype,
field2 datatype,
field3 datatype
);
可以使用comment
增加字段说明
create table stu_test (
id int,
name varchar(20) comment ‘姓名’,
password varchar(50) comment ‘密码’,
age int,
sex varchar(1),
birthday timestamp,
amout decimal(13,2),
resume text
)
⭐4.3 删除表
删除表:DROP [TEMPORARY] TABLE [IF EXISTS]
表名
[, tbl_name] …