MySQL(3)表的操作
目录
1. 表的操作;
2. 数据类型;
1. 表的操作:
1.1 创建表:
语法: create table 表名(
属性 类型 [comment ' '],
属性 类型 [comment ' '],
属性 类型
) character set 字符集 collate 校验集 engine 存储引擎;
前面博客提到: MyISAM和InoDB这两个比较重要.
1.2 查看表结构:
语法: desc 表名;
1.4 修改表:
修改包括: 增加, 修改, 删除;
(1)增加语法: alter table 表名 add 增加属性 类型 after 原来属性;
(2)修改语法: alter table 表名 modify 原来属性 新类型;
(3)删除语法: alter table 表名 drop 属性;
(4)修改表名:
语法: alter table 表名 rename [to] 新表名;
修改属性及其类型:
语法: alter table 表名 change 旧属性 新属性 新类型;
1.5 删除表:
语法: drop table 表名;
2. 数据类型:
2.1数据类型分类:

2.2 数值类型:
2.2.1 tinyint:
tinyint: 是1个字节, 它的取值范围是 [-128,127]; 超出这个范围就会越界访问,报错.
⭐ 整形可以指定是有符号还是无符号的,默认是有符号的. 关键字: unsigned ;
tinyint 无符号范围是[0,255] ;
🍔 补充: smallint: 2个字节, 那么它的取值范围就是[-2^(n*8-1) , 2^(n*8-1) - 1];
那么就是[-32768, 32767]; 那么无符号取值范围就是[0, 2^(n*8)-1] ; 那么就是[0, 65535];
还有int: 是4个字节, bigint: 8个字节;
2.2.2 bit:
语法: bit(n); 1<= n <= 64; 默认不写就是1;
bit是按照ASCII码进行显示的;
如果想要存放0/1, 那么就可以使用bit(1), 节省空间, 但是插入数据就只能是一位二进制.
2.2.3 float:
语法: float(n,m) [unsigned] n表示指定长度, m是小数点后保留几位. 占用4个字节.
🌰 float(4, 2): 表示就是xx.xx, 并且是有符号的, 保留两位小数. 那么范围就是[-99.99, 99.99];
那么同理float(6, 2) 范围就是[-9999.99, 9999.99].
⭐ 如果插入的数据小数部分还会进行四舍五入, 如果四舍五入之后超过范围会报错, 反之就会成为最大/最小范围值.
再思考一下无符号类型呢? float(4, 2) 范围就是[0, 99.99];
2.2.4 decimal:
decimal的语法使用和float是一样的, 但是decimal的精度是高于float的;
⭐ float的精度最高是7位, decimal的精度最高是65位.
2.2.5 char:
语法: char(n); 最大长度是255; 占1个字节
⭐ 这里的n并不是2个字节, 是字符的个数.
2.2.6 varchar:
语法: varchar(n); 最大长度是65535;占2字节.
⭐ 这里的n的大小是多少? 其实和编码集相关的;
一般还要使用1-3个字符记录数据的大小, 所以就是65532;
如果编码集是utf8, 那么一个字符占3字节, 65532/3=21844;
如果编码集是gbk, 那么一个字符占2字节, 65532/2=32766;
🍋 char和varchar的对比:
char和varchar的不同点就是占用字节的计算, char是根据n来进行计算, varchar是根据具体字符进行计算的.
🌰 abcd 和 A 分别被char(4) AND varchar(4):
char(4): abcd: 4*3 = 12; A: 4*3 = 12;
varchar(4): abcd: 4*3 + 1=13; A: 1*3 + 1= 4;
🍔如何选择定长和变长字符串呢?
a. 长度确定就使用定长, 不确定就变长;
b. 定长磁盘空间浪费, 但效率高; 变长相反;
c. 定长是直接开辟好的空间, 变长是用多少开辟多少.
2.2.7 日期和时间:
(1) date: 日期 'yyyy-mm-dd' 占3个字符;
(2) datatime: 日期格式 'yyyy-mm-dd HH:ii:ss' 占8个字符;
(3) timestamp: 时间戳 , 从1970年开始的 yyyy-mm-dd HH:ii:ss 格式和 datetime 完全一致,占用 四字节;
🍔 update 表名 set 属性=新属性;
2.2.8 enum 和 set:
enum语法: enum('选项1', '选项2', ...);
⭐ 这些值实际存储的是数字, 每个选项值对应一个数字1,2,3,...
set语法: set('选项1', '选项2', ...);
🍔 where和find_in_set: 区别就是where查找完整的, find_in_set查找相关的.
相关文章:
MySQL(3)表的操作
目录 1. 表的操作; 2. 数据类型; 1. 表的操作: 1.1 创建表: 语法: create table 表名( 属性 类型 [comment ], 属性 类型 [comment ], 属性 类型 ) character set 字符集 collate 校验集 engine 存储引擎; 前面博客提到: MyISAM和InoDB这两个比较重要. 1.2 查看表…...
SQL GROUPING运算符详解
在大数据开发中,我们经常需要对数据进行分组和汇总分析。 目录 1. GROUPING运算符概念2. 语法和用法3. 实际应用示例4. GROUPING运算符的优势5. 高级应用场景5.1 与CASE语句结合使用5.2 多维数据分析 6. 性能考虑和优化技巧7. GROUPING运算符的局限性8. 最佳实践9. GROUPING与其…...
在VS2017下FFmpeg+SDL编写最简单的视频播放器
1.下载ShiftMediaProject/FFmpeg 2.下载SDL2 3.新建VC控制台应用 3.配置include和lib 4.把FFmpeg和SDL的dll 复制到工程Debug目录下,并设置调试命令 5.复制一下mp4视频到工程Debug目录下(复制一份到*.vcxproj同一目录,用于调试) 6…...
LogViewer v2.x更新
logvewer 介绍 logviewer 是一个可以方便开发人员通过浏览器查看和下载远程服务器集群日志,使用ssh方式管理远程tomcat、jar包等应用,节省服务器资源。大家可以下载体验,请勿用于生产环境。欢迎提出意见或建议。 解决的问题 一般情况下公司…...
detection_segmentation
目标检测和实例分割(OBJECT_DETECTION AND INSTANCE SEGMENTATION) 文章目录 目标检测和实例分割(OBJECT_DETECTION AND INSTANCE SEGMENTATION)一. 计算机视觉(AI VISION)1. 图像分类2. 目标检测与定位3. 语义分割和实例分割目标检测算法可以分为两大类: R-CNN生成…...
0基础学python-13:古希腊掌管时间的模块——datetime和time
目录 前言 datetime模块 一、datetime 类 1.创建 datetime 对象 2.获取日期时间的各个部分 3.格式化日期时间为字符串 4.解析字符串为 datetime 对象 二、timedelta 类 1.创建 timedelta 对象 datetime注意事项 time模块 1.获取当前时间戳 2.获取当前时间的结构化表…...
棒球特长生升学具有其独特的优势和劣势·棒球6号位
棒球特长生升学具有其独特的优势和劣势,以下是对这两方面的详细分析: 获得更好的教育资源: 棒球特长生有机会通过棒球特长招生计划进入更好的学校。这些学校往往拥有更优质的教育资源,包括师资力量、教学设施、课程设置等&#…...
搜维尔科技:Xsens DOT 可穿戴传感器介绍及示例应用演示
Xsens DOT可穿戴传感器介绍及示例应用演示 搜维尔科技:Xsens DOT 可穿戴传感器介绍及示例应用演示...
数据分析案例-2024 年热门动漫数据集可视化分析
🤵♂️ 个人主页:艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞Ǵ…...
C#小结:未能找到类型或命名空间名“xxx”(是否缺少 using 指令或程序集引用?)
方案一:移除类库这些失效的引用,下载对应版本的dll(如有则不需要重复下载),重新添加引用 方案二:类库右键属性-调整目标框架版本(一般是降低版本) 方案三:调整类库编译顺…...
STM32智能无人机控制系统教程
目录 引言环境准备智能无人机控制系统基础代码实现:实现智能无人机控制系统 4.1 数据采集模块 4.2 数据处理与控制算法 4.3 通信与网络系统实现 4.4 用户界面与数据可视化应用场景:无人机管理与优化问题解决方案与优化收尾与总结 1. 引言 智能无人机控…...
从 QWebEnginePage 打印文档
QWebEnginePage 是 Qt WebEngine 模块中的一个类,它提供了用于处理网页内容的接口。如果你想要打印 QWebEnginePage 中的内容,你可以使用 QPrinter 和 QPrintDialog 类来实现。 项目配置了 Qt WebEngine 模块,并且在你的.pro文件中包含了相应…...
初识Docker及管理Docker
Docker部署 初识DockerDocker是什么Docker的核心概念镜像容器仓库 容器优点容器在内核中支持2种重要技术:Docker容器与虚拟机的区别 安装Docker源码安装yum安装检查Docker Docker 镜像操作配置镜像加速器(阿里系)搜索镜像获取镜像查看镜像信息…...
【学术会议征稿】2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024)
2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024) 2024 3rd International Conference on Informatics,Networking and Computing (ICINC 2024) 2024年第三届信息学,网络与计算技术国际学术会议(ICINC2024)将于2024年10月25-27日于中国郑州召…...
在golang中Sprintf和Printf 的区别
最近一直在学习golang这个编程语言,我们这里做一个笔记就是 Sprintf和Printf 的区别 fmt.Sprintf 根据格式化参数生成格式化的字符串并返回该字符串。 fmt.Printf 根据格式化参数生成格式化的字符串并写入标准输出。由上面就可以知道,fmt.Sprintf返回的…...
策略模式原理与C++实现
定义 定义一些列算法,把他们一个个封装起来,并且使他们可以相互替换(变化)。该模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展、子类化)。 C实现 在不考虑策略模式的情况…...
打包一个自己的Vivado IP核
写在前面 模块复用是逻辑设计人员必须掌握的一个基本功,通过将成熟模块打包成IP核,可实现重复利用,避免重复造轮子,大幅提高我们的开发效率。 接下来将之前设计的串口接收模块和串口发送模块打包成IP核,再分别调用…...
《昇思25天学习打卡营第05天|qingyun201003》
日期 心得 通过本节课的学习,学习到了通过网络获取数据集,处理数据集模型。数据模型层数据变换,模型参数解析和其对应代码中的API进行解析。 昇思MindSpore 基础入门学习 网络构建 (AI 代码解析) 网络构建 神经网络模型是由神经网络层和T…...
【Leetcode】二十一、前缀树 + 词典中最长的单词
文章目录 1、背景2、前缀树Trie3、leetcode208:实现Trie4、leetcode720:词典中最长的单词 1、背景 如上,以浏览器搜索时的自动匹配为例: 如果把所有搜索关键字放一个数组里,则:插入、搜索一个词条时&#x…...
秋招Java后端开发冲刺——Mybatis使用总结
一、基本知识 1. 介绍 MyBatis 是 Apache 的一个开源项目,它封装了 JDBC,使开发者只需要关注 SQL 语句本身,而不需要再进行繁琐的 JDBC 编码。MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java POJO(Plain …...
wordpress后台更新后 前端没变化的解决方法
使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…...
Python爬虫实战:研究MechanicalSoup库相关技术
一、MechanicalSoup 库概述 1.1 库简介 MechanicalSoup 是一个 Python 库,专为自动化交互网站而设计。它结合了 requests 的 HTTP 请求能力和 BeautifulSoup 的 HTML 解析能力,提供了直观的 API,让我们可以像人类用户一样浏览网页、填写表单和提交请求。 1.2 主要功能特点…...
华为云AI开发平台ModelArts
华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
前端导出带有合并单元格的列表
// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
深度学习水论文:mamba+图像增强
🧀当前视觉领域对高效长序列建模需求激增,对Mamba图像增强这方向的研究自然也逐渐火热。原因在于其高效长程建模,以及动态计算优势,在图像质量提升和细节恢复方面有难以替代的作用。 🧀因此短时间内,就有不…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...











