MySQL —— 库,数据类型 与 表
库与基础操作
1.1 查看数据库
使用 show databases; 可以查看当前 MySQL 目前有多少个数据库

5 rows 表示有 5 行,这里是表示的是有效的数据,不包括 第一行的指引
set 表示结果集合
0.01 sec 表示这个 sql 语句一共运行了0.01 秒,一般情况下这个数值不是很准确
1.2 创建数据库
creat database (if not exists) database_name (character set charset_name) (collate collation_name);
if not exists表示如果不存在,加了这个可以增加一些校验,
加了括号的表示是可选项,你可以写,可以不写
character set表示字符集,我们可以指定字符集去存储字符
collate表示排序方式
5.7 版本的MySQL 的字符集是 latin1(拉丁字符集,不支持中文字符),8.0版本支持 utf8mb4 编码(最多支持 一个字符占 4 个字节,可以保存中文字符和特殊字符例如表情包等等),不同的字符集意味着存储的字符数量不同,我们可以通过show variables like '%character%';来查看当前我们数据库默认的字符集编码
下面是 8.0 版本:

也就是说如果你没有指定字符集和编码方式,你创建的数据库就会默认这两种方式,所以这里强烈建议开发学习者手动去指定我们创建的数据库的字符集与排列方式。
以8.0版本为例:
字符集指定为utf8mb4 排列方式可以指定为 utf8mb4_0900_ai_ci
版本过低的MySQL可能不支持 utf8mb4 的字符集编码方式
这里解释一下 ai 与 ci
ai : accent insencitive 口音不敏感
as : assccent sencitive 口音敏感
ci : case insencitive 大小写不敏感,表示无论是大写还是小写字母都认为是小写字母
cs : case sencitive 大小写敏感
在MySQL 中是 ci 模式,所以我们编写的 sql 语句不用考虑 大小写问题,都是一样的。
演示创建数据库:

query ok 表示成功

如果我们加了 if not exists 就会加一层校验,如果你重复创建数据库,MySQL 会给你自动报个警告,所以你会看到 1 warning
如果想查看警告信息,使用
show warnings;
它显示无法创建这个库,该库已经存在。
MySQL 创建数据库尽量不要使用 关键字,如果非要使用,在数据库的名称加上反引号【位于 esc 下方,tab 上方,1的左边,并且要保证在英文状态下】
如果写错sql 语句,MySQL会报错误给你:
sql syntax 表示的是语法出错了。
1.3 使用数据库
使用 use database_name;
最后一个分号加不加无所谓

1.4 删除数据库
使用drop database (if exists) database_name;

注意别乱删数据库,凡是数据库的删除操作请谨慎!!!三思而后行!!!!
数据类型
2.1 数值类型
| 数据类型 | 大小 | 说明 | 对应的Java类型 |
|---|---|---|---|
| bit[(M)] | M指定位数,默认为1 | 二进制数,M范围从1~ 64,存储数值范围为0 ~ 2^M -1 | 常用Boolean 对应 |
| tinyint | 1个字节 | Byte | |
| smallint | 2个字节 | short | |
| int | 4个字节 | Integer | |
| bigint | 8个字节 | Long | |
| float(M,D) | 4个字节 | M指定长度,D指定小数位数 | Float |
| double(M,D) | 8个字节 | Double | |
| decimal(M,D) | M/D最大值+2 | BigDecimal | |
| numeric(M,D) | BigDecimal |
M表示长度时,长度不包括符号和小数点,如果表示的是 - 3.1415926,M的长度为 8.
常用 int 表示数量,bigint 表示一串长的编码,decimal 来存储有精度要求的带小数的数据,bool 也可以表示 tinyint 表示 二选一的选项(例如gender)
数值类型可以指定为无符号(unsigned),表示不取负数。
1字节(bytes)= 8bit。
对于整型类型的范围:
1.有符号范围:-2 ^(类型字节数8-1) 到 2 ^(类型字节数8-1)-1,如 int 是 4字节,就是 -2 ^ 31 到 2 ^31-1
2.无符号范围:0到 2 ^ (类型字节数*8)-1,如 int 就是 2 ^ 32 - 1
尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其如此,还不如设计时,将int类型提升为bigint类型。
2.2 字符串类型
| 数据类型 | 大小 | 说明 | 对应的Java类型 |
|---|---|---|---|
| varchar(size) | 0 ~ 65,535 个字节 | 可变长度字符串 | String |
| text | 0 ~ 65,535 个字节 | 长文本数据 | String |
| mediuntext | 0 ~ 16,777,215 个字节 | 中等长度文本数据 | String |
| blob | 0 ~ 65,535 个字节 | 二进制形式的长文本数据 | byte[] |
重点是 varchar,一定要加上 (size)来指定最多可以保存多少个字符,一个英文字符或者一个中文字符都算一个字符,size 表示字符数,不考虑字符占多大字节
2.3 日期类型
| 数据类型 | 大小 | 说明 | 对应的Java类型 |
|---|---|---|---|
| datetime | 8个字节 | 范围从 1000 ~ 9999 年,不会进行时区的检索与转换 | java.util.Date、java.sql.Timestamp |
| timestamp | 4个字节 | 范围从 1970 ~ 2038 年,自动检索当前时区并进行转换 | java.util.Date、java.sql.Timestamp |
datetime 只能精确到年月日,而 timestamp 可以精确到年月日时分秒,后面还有小数点。
建议使用 datatime ,因为 timestamp 到了 2038 会溢出,对我们的数据可能会造成影响,可以参考千年虫危机
表
需要操作数据库中的表时,需要先使用该数据库
use database_name;
3.1 创建表
语法格式:
creat table (if not exists) table_name (字段名称1 数据类型,字段名称2 数据类型,字段名称3 数据类型
);
在编写比较长的 sql 语句或者复杂的 sql 语句的时候,可以使用可视化工具。
在数据类型后面可以加上 comment ‘注释’ 【注意这里使用的是英文的单引号】
在开发过程中,加注释是其中一个重要的环节。
演示:
create table if not exists student (id bigint comment '身份证号',name varchar(50) comment '姓名',class varchar(20) comment '班级'
);

3.2 查看表结构
使用 desc table_name;
desc 是英文 describe (描述) 的缩写
演示:

Filed 表示字段名称
Type 表示字段类型
NULL:是否允许为空
Key 索引类型
Default 默认值
Extra 扩充
3.3 删除表
语法格式:
drop table (if exists) table_name, table_name,...;
可以删除一个及以上的表。
演示:

在开发中,删除表操作也要谨慎,三思而后行!!!
其他操作
使用\? 可以查看一些MySQL的基本操作:

使用 select version(); 可以查看当前使用的MySQL版本:

使用 \. sql文件路径 可以执行该 sql 文件 :
注意 . 后面要加一个空格
写完路径后,不需要加分号,直接enter 允许文件即可。

查看表的数量:show tables;

相关文章:
MySQL —— 库,数据类型 与 表
库与基础操作 1.1 查看数据库 使用 show databases; 可以查看当前 MySQL 目前有多少个数据库 5 rows 表示有 5 行,这里是表示的是有效的数据,不包括 第一行的指引 set 表示结果集合 0.01 sec 表示这个 sql 语句一共运行了0.01 秒,一般情况…...
Java重修笔记 第二十七天 匿名内部类
匿名内部类 1. 定义:无类名(底层自动分配类名“外部类名$1”),既是类也是对象,定义在外部类的局部位置,例如方法体和代码块中,通过new类或接口并在大括号里重写方法来实现。 2. 使用场景&…...
Nero Lens 智图 - 适用于 iOS 和 iPadOS 的专业图片处理 App
首先是手机端的无损放大 App:Nero Lens 智图,适用于 iOS 和 iPadOS,不仅可以放大,还有多种 AI 图片增强功能。 使用这款 App 可以通过 AI 模型智能放大可达 400%,还有老照片去划痕、上色,抠图移除背景、照…...
Nginx代理路径被吃
Nginx代理路径被吃的情况 日常工作中经常使用nginx反向代理一些资源,有时正常代理,发现代理不过去。 验证被吃调location情况 通过浏览器访问: https://zhao138969.com/LinuxPackage/Python/SelectDocker location /LinuxPackage { proxy…...
pytest-html报告修改与汉化
前言 Pytest框架可以使用两种测试报告,其中一种就是使用pytest-html插件生成的测试报告,但是报告中有一些信息没有什么用途或者显示的不太好看,还有一些我们想要在报告中展示的信息却没有,最近又有人问我pytest-html生成的报告&a…...
react-native从入门到实战系列教程一Swiper组件的使用及bug修复
轮播图,在app中随处可见,这么重要的功能我们怎么可能不学习下在react-native中的实现方式。 依然是第三方组件react-native-swiper 官网地址 https://www.npmjs.com/package/react-native-swiper 组件使用的组件及事件参考官方即可。 实现效果 官网…...
springboot开发的常用注解总结-配置组件类注解
Spring Boot 提供了许多注解,这些注解大大简化了 Spring 应用的配置和开发过程。以下是一些常见的 Spring Boot注解及其作用。 目录 配置组件类 (Configure Component )Configuration解释:Demo Code:更深度使用&#x…...
DataX 最新版本安装部署
1、下载 git clone gitgithub.com:alibaba/DataX.git 2、打包 mvn -U clean package assembly:assembly -Dmaven.test.skiptrue...
【架构】应用保护
这篇文章总结一下应用保护的手段。如今说到应用保护,更多的会想到阿里的sentinel,手段丰富,应用简单。sentinel的限流、降级、熔断,可以自己去试一下,sentinel主要通过配置实现功能,不难。sentinel的简介放…...
从核心到边界:六边形、洋葱与COLA架构的深度解析
文章目录 1 引言2 软件架构3 架构分类4 典型的应用架构4.1 分层架构4.2 CQRS4.3 六边形架构4.4 洋葱架构4.5 DDD 5 COLA架构设计5.1 分层设计5.2 扩展设计5.3 规范设计5.3.1 组件规范5.3.2 包规范5.3.3 命名规范 6 COLA架构总览7 小结 1 引言 软件的首要技术使命:管…...
04-Fastjson反序列化漏洞
免责声明 本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担&…...
ABC365(A-D)未补
A - Leap Year(模拟) 题意:给定一个数字n,如果n不是4的倍数,输出365;如果n是4的倍数但不是100的倍数,输出366;如果n是100的倍数但不是400的倍数,输出365;如果…...
Python用png生成不同尺寸的图标
Kimi生成 from PIL import Imagedef generate_icon(source_image_path, output_image_path, size):with Image.open(source_image_path) as img:# 转换图片为RGBA模式,确保有透明通道if img.mode ! RGBA:img img.convert(RGBA)# 调整图片大小到指定尺寸img img.r…...
1688中国站获得工厂档案信息 API
公共参数 名称类型必须描述keyString是免费申请调用key(必须以GET方式拼接在URL中)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]cacheString否[yes,no]默认y…...
定时任务框架 xxl-job
🍓 简介:java系列技术分享(👉持续更新中…🔥) 🍓 初衷:一起学习、一起进步、坚持不懈 🍓 如果文章内容有误与您的想法不一致,欢迎大家在评论区指正🙏 🍓 希望这篇文章对你有所帮助,欢…...
C/C++关键字大全
目录 一、const 二、static 三、#define 和 typedef 四、#define 和 inline 五、#define 和 const 六、new 和 malloc 七、const 和 constexpr 八、volatile 九、extern 十、前置 和后置 十一、atomic 十二、struct 和 class 一、const 1、const 关键字可用于定义…...
ROS2 Linux Mint 22 安装教程
前言: 本教程在Linux系统上使用。 一、linux安装 移动硬盘安装linux:[LinuxToGo教程]把ubuntu装进移动固态,随时随用以下是我建议安装linux mint版本的清单: 图吧工具箱:https://www.tbtool.cn/linux mint: https://…...
快速将网站从HTTP升级为HTTPS
在当今数字化的世界中,网络安全变的越来越重要,HTTPS(超文本传输安全协议)不仅能够提供加密的数据传输,还能增强用户信任度,提升搜索引擎排名,为网站带来多重益处。所以将网站从HTTP升级到HTTPS…...
Qt程序移植至Arm开发板
目录 1.工具准备: 系统调试工具SecureCRT 虚拟机安装linux(Ubuntu) 交叉编译工具链 ARM 端Qt 环境(Qt-5.7.1) 1) linux processor SD安装 2)交叉编译工具链配置 2.编译Qt工程: 2.0 交叉编译 依赖库源码,生成动…...
删除分区 全局索引 drop partition global index Statistics变化
1.不一定unusable,可以先删除data (index 再删除过程中会更新结构)再drop/truncate. ---------------------- CREATE TABLE interval_sale ( prod_id NUMBER(6) , cust_id NUMBER , time_id DATE ) PARTITION BY RANGE (time_i…...
一键部署生产力:星图平台OpenClaw+Qwen3.5-9B体验
一键部署生产力:星图平台OpenClawQwen3.5-9B体验 1. 为什么选择云端沙盒方案 上周我在本地尝试部署OpenClaw时,经历了Python版本冲突、CUDA驱动不兼容等一系列典型环境问题。当看到星图平台提供预装OpenClawQwen3.5-9B的完整镜像时,第一反应…...
百川2-13B模型中文OCR增强:OpenClaw图片信息提取优化
百川2-13B模型中文OCR增强:OpenClaw图片信息提取优化 1. 为什么需要OCR增强的智能体 上个月在处理一份电子合同时,我遇到了一个典型问题:合同是扫描件图片格式,我需要从中提取关键条款、金额和日期等信息。手动录入不仅耗时&…...
毕业设计实战:基于SpringBoot+Vue+MySQL的校园一卡通管理系统设计与实现指南
毕业设计实战:基于SpringBootVueMySQL的校园一卡通管理系统设计与实现指南 在开发“基于SpringBootVueMySQL的校园一卡通管理系统”毕业设计时,曾因器材借用表未通过学生ID与器材ID双外键关联踩过关键坑——初期仅单独设计借用表的编号字段,…...
2026年专业深度测评:防蛀牙儿童牙膏排名前五权威榜单
核心结论: 基于对产品配方科学性、成分安全性、防蛀功效验证及品牌专业资质的四维量化评估,德国原装进口的宝儿德儿童牙膏在本次权威测评中综合表现位列榜首,其经百年验证的经典防蛀配方、全面的“无有害添加”体系及适配儿童误吞的安全性设计…...
国标GB28181视频监控平台EasyCVR破解偏远地区监控难题的应用实践
在数字化治理全面推进的当下,视频监控系统已然成为保障公共安全、提升基层管理效率的核心基础设施。但对于地形复杂、网络基础薄弱、设备条件参差不齐的偏远地区来说,传统视频监控方案部署面临重重困境,面对地理环境与技术条件的双重限制&…...
ezLED库详解:Arduino非阻塞LED控制与状态机设计
1. ezLED库深度解析:面向嵌入式工程师的LED控制实践指南1.1 库定位与工程价值ezLED是一个专为Arduino平台设计的轻量级LED控制库,其核心目标并非替代底层GPIO操作,而是在硬件抽象层之上构建可复用、可配置、可调度的LED行为模型。在实际嵌入式…...
5分钟搞定OpenClaw对接Qwen3-32B:RTX4090D私有镜像一键部署指南
5分钟搞定OpenClaw对接Qwen3-32B:RTX4090D私有镜像一键部署指南 1. 为什么选择Qwen3-32BOpenClaw组合 上周我在调试一个自动化文档处理流程时,发现现有的7B模型经常无法理解复杂的文件操作指令。经过多次尝试,最终选择了Qwen3-32B作为OpenC…...
ProDino MKR Zero工业RS-485与LoRaWAN开发指南
1. ProDino MKR Zero 硬件平台与配套库深度解析ProDino MKR Zero 是 KMP(KMP Electronics)面向工业物联网边缘节点推出的紧凑型 ARM Cortex-M0 开发平台,基于 Microchip SAMD21G18A 微控制器(48MHz 主频、256KB Flash、32KB SRAM&…...
用户样式管理新范式:Stylus如何重塑跨浏览器自定义体验
用户样式管理新范式:Stylus如何重塑跨浏览器自定义体验 【免费下载链接】stylus Stylus - Userstyles Manager 项目地址: https://gitcode.com/gh_mirrors/sty/stylus 在当今多浏览器并存的互联网生态中,用户面临着网页样式个性化的核心痛点&…...
EBioMedicine(IF=10.8)英国伦敦国王学院等团队:融合CT深度学习、CT放射组学与外周血免疫特征在症状患者队列中诊断肺癌的研究
01文献学习今天分享的文献是由英国伦敦国王学院综合癌症中心、英国伦敦大学学院等团队于2026年2月在《eBioMedicine》(中科院1区top,IF10.8)上发表的研究“Fusing data from CT deep learning, CT radiomics and peripheral blood immune pro…...



