news 2026/6/9 20:11:33

MySQL--库的操作、数据类型、表的操作

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MySQL--库的操作、数据类型、表的操作

(一).库的操作

1.查看数据库

在MySQL中,我们可以使用show databases;语句来查看目前已经被创建好的数据库

注意,当我们忘记写“;”的时候,按Enter 后就会另起一行,继续去写未完成的SQL,直到遇见“;”为止

如果中途写错了,我们可以通过Ctrl+c,重新开始一行

2.创建数据库

(1).语法

(2).实例

i.创建一个java111的数据库

ii.如果Java112不存在,则创建java112数据库

我们可以通过show warnings;命令来查看这个警告

当我们在已经创建好了java112数据库的情况下,再直接创建java112,则会直接报错

我们可以看到,警告的信息和直接报错的信息一模一样

iii.创建一个名为java113的数据库,并指定字符集和排序规则

iv.创建一个名字为关键字的数据库

我们知道,create 、database 为MYSQL中的关键字,那么我们是否可以创建一个名字为 “create”的数据库?

通过我们的实验,显然是不行的

但是,我们可以通过反引号来创建``

3.查看当前数据库服务全局的默认字符集

使用show variables like '%character%';命令

4.使用数据库

use 数据库名 ;

在使用之前,我们可以先查看一下当前选择的是哪个数据库

使用select database();命令

通过上面的图片可以看到,我们当前没有使用任何一个数据库

现在,假设我们要使用java111这个数据库

那么我们就通过use java111;命令,来使用java111这个数据库

5.删除数据库

DROP{DATABASE | SCHEMA} [IFEXISTS]db_name
DROP 表示删除
IF EXISTS 表示指定的数据库存在
db_name 表示要删除的数据库名

通过上面的图片,我们可以看到,我将原来创建的java111,java112,java113这三个库都删除了,然后再通过show databases;命令去查看数据库的时候,已经没有这三个库了

(二).数据类型

1.数值类型

数据类型大小说明对应java类型
bit[(M)]M指定位数,默认为1二进制数,M的范围从1到64,存储数值范围从0到2^M-1常用Boolean对应BIT,此时默认是1位,即只能存储0和1
tinyint1字节bool=tinyint(1)Byte
smallint2字节Short
int4字节我们平时常见的intInteger
bigint8字节用在编号字段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

注意

①.float和double类型,在表示小数的时候都不是特别精确,所以使用decimal类型去表示小数

②.在有些系统中表示金额,一般把“元”为单位换成以“分”为单位,然后用int类型去表示金额

③.M中不计算小数和负数的,如果D为0,则具体的值不保存小数点和小数部分,也就是说保存的是一个整数,decimal的最大位数(M)为65,支持最大的小数(D)为30,如果省略D,则默认是0,如果省略M,则默认是10

2.字符串类型

数据类型大小说明对应java类型
varchar(size)0~65535字节

可变长度字符串

最常用的一种字符串类型,可以指定长度是多少,即多少个字符

Stirng
text0~65535字节长文本数据String
mediumtext0~16777215字节中等长度文本数据String
blob0~65535字节

二进制形式的长文本数据

存的是byte数组,即一个文件的二进制形式

byte[]

注意:

①.varchar(10),10为指定的字符串的长度,不是字节的大小

也就是说,定义一个字段,字段可以存放10个和10个以内的字符,超过10个字符就报错

之前我们设置了数据库的编码集,utf8mb4编码集,一个字符最多占4个字节,根据字符的具体情况,用1-4个字节表示一个字符

在utf8mb4编码集的情况下,一个varchar字段最多可以存放16383( 65535/4 )个字符

②.一般在数据库中,不建议存文件,而是把文件存在磁盘上,在数据库相应的字段中保存文件路径。在查询文件的时候,先从数据库中找到文件路径,再去根据文件路径在磁盘上加载或是返回具体的真实文件

3.日期类型

数据类型大小说明对应java类型
datetime8字节范围从1000到9999年,不会进行时区的检索及转换

java.util.Date

java.sql.Timestamp

timestamp4字节范围从1970到2038年,自动检索但其当前时区并进行转换

java.util.Date

java.sql.Timestamp

注意

①.datetime只能精确到年月日,tinestamp可以精确到年月日时分秒,后面还有小数点

②.建议使用datetime,因为timestamp到了2038年就溢出了,对数据可能会造成影响,即千年虫危机。

(三).表的操作

在创建表时,首先要使用use 数据库名;命令,选择要操作的数据库。

例如,我要在test_db4中创建表,我们首先要在使用test_db4这个数据库

1.创建表

示例

方法1:

创建一个名字为student的学生表,表中包含两个字段,id表示编号,name表示姓名,长度为50

注意:也可以在创建表的时候,加上if not exists校验

方法2:

在可视化编辑器中把创建表的SQL编写好,然后再命令行中执行

这个是我在可视化编辑工具中把创建表的SQL编写好了

comment,表示对当前字段的注解,只是描述性的内容,对表结构没有影响

下面就是在命令行工具中执行的步骤:

①.首先在编辑器中把SQL编辑好之后,保存为一个本地的.sql文件

②.在命令行中

通过source + 本地的.sql文件的位置;命令来执行

2.查看表结构

desc 表名;

3.删除表

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

drop 表示“删除”的意思

temporary 表示“用户自己创建的临时表”

tbl_name [, tbl_name] ... 表示“一条drop语句可以删除很多个表,每个表之间用逗号隔开”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/27 6:46:30

知产代理必看:用AI工具批量生成软著材料,成本直降60%

上个月处理了200单软著,人工成本花了12000块。 这是我一个做知产代理的朋友跟我吐槽的。他们公司5个人专门做软著业务,每个月稳定200多单。听起来挺赚钱,但算算账就知道有多累:每单材料准备至少要1-2小时,加班是常态&…

作者头像 李华
网站建设 2026/6/7 11:12:27

毕业论文降AI必备:6款工具帮你轻松过检测

毕业论文降AI必备:6款工具帮你轻松过检测 答辩前一周,导师突然给我发消息:“你这论文AI率62%,重新改。” 那一刻我是懵的。因为那篇论文我写了两个月,查资料、做实验、一个字一个字敲出来,从没用过 ChatG…

作者头像 李华
网站建设 2026/6/7 10:58:52

2026届毕设必看:知网降AI工具实测,不达标全额退款

2026届毕设必看:知网降AI工具实测,不达标全额退款 室友花了300多块买了个降AI工具,结果知网检测还是32%。 我花了80块用比话降AI,直接降到了4.7%。省钱的秘诀其实就一条:选有退款承诺的工具。 先说结论:…

作者头像 李华
网站建设 2026/6/7 4:45:42

2026毕设ssm+vue旅游管理系统论文+程序

本系统(程序源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、选题背景关于旅游信息化管理问题的研究,现有研究主要以传统OTA平台功能优化、单一旅游目的地管理系统开发为主,…

作者头像 李华
网站建设 2026/6/5 4:07:00

2026毕设ssm+vue旅游打卡系统论文+程序

本系统(程序源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。 系统程序文件列表 开题报告内容 一、选题背景 1.1 现实背景与研究缘起 随着我国文化旅游产业的数字化转型加速,旅游业对信息化管理平台的需求日益迫切。…

作者头像 李华
网站建设 2026/6/5 5:20:36

ue 微笑 audio2emotion 学习配置

目录 自己制作微笑表情: 直接拉表情曲线 —— 适合你现在这种 AnimBP 流程 😀 标准微笑需要这几块: 🎯 在 AnimBP 里做: mh_arkit_mapping_pose_a2f 接的modify curve curve_map 中添加了值: MouthSmile_L = 0.7 MouthSmile_R = 0.7 CheekRaise_L = 0.4 CheekRa…

作者头像 李华