MySQL数据库关于表的一系列操作
MySQL中的数据类型
varchar 动态字符串类型(最长255位),可以根据实际长度来动态分配空间,例如:varchar(100)
char 定长字符串(最长255位),存储空间是固定的,例如:char(10)
int 整数型(最长11位)
long 长整型
float 单精度
double 双精度
date 短日期,只包括年月日
datetime 长日期,包括年月日时分秒
clob 字符大对象(最多可以存储4G的字符串) ,超过255字符的都要采用此进行存储
blob 二进制大对象,主要用于存储流媒体数据等
创建数据表
例如,创建一个学生表:
mysql> CREATE TABLE imustctf(-> ctf_id INT NOT NULL AUTO_INCREMENT,-> ctf_name varchar(100) NOT NULL default 'dahezhiquan',-> ctf_age INT NOT NULL,-> ctf_date DATE,-> PRIMARY KEY (ctf_id)-> )ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected, 1 warning (0.06 sec)
实例解析:
如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
PRIMARY KEY关键字用于定义列为主键,您可以使用多列来定义主键,列间以逗号分隔。
ENGINE 设置存储引擎,CHARSET 设置编码。
default 用于设置字段为空时的默认值。
删除表
现在我们来删除一个student表:
mysql> drop table student;
Query OK, 0 rows affected (0.07 sec)
这种删除方法,如果表不存在会发生一个错误,我们可以通过下面的写法来提升SQL的鲁棒性。如果表存在,则进行删除,否则不删除:
mysql> drop table if exists student;
Query OK, 0 rows affected, 1 warning (0.00 sec)
插入数据
MySQL 表中使用 INSERT INTO SQL语句来插入数据。
mysql> insert into imustctf-> (ctf_name,ctf_age,ctf_date)-> values-> ('学习Mysql',18,NOW());
Query OK, 1 row affected, 1 warning (0.02 sec)
在以上实例中,我们并没有提供 ctf_id 的数据,因为该字段我们在创建表的时候已经设置它为AUTO_INCREMENT(自动增加) 属性。
所以,该字段会自动递增而不需要我们去设置。实例中 NOW() 是一个 MySQL 函数,该函数返回日期和时间。
插入多条数据:
mysql> insert into imustctf-> (ctf_name,ctf_age,ctf_date)-> values-> ('学习Mysql',18,NOW()),-> ('学习java',21,NOW()),-> ('学习Spring',27,NOW());
Query OK, 1 row affected, 1 warning (0.02 sec)
日期转换函数:
str_to_date函数可以将字符串转化为日期类型,语法格式:
str_to_date('字符串日期','日期格式')
例如:
str_to_date('01-11-1998','%d-%m-%Y')
(左右滑动查看完整代码)
注意:如果你的字符串日期格式是1990-08-11,则不需要使用str_to_date函数进行转换,Mysql会自动进行字符串转日期类型。
日期格式化显示函数:
date_format函数可以将日期转换成特定格式的字符串,例子:
date_format(日期数据,'日期格式')
date_format(birth,'%m/%d/%Y')
更新数据
如果我们需要修改或更新 MySQL 中的数据,我们可以使用 SQL UPDATE 命令来操作。
mysql> update dept set DNAME = 'BBB' where DEPTNO = 70;
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
删除数据
你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录,例如:
mysql> delete from dept where DEPTNO = 70;
Query OK, 1 row affected (0.02 sec)
快速复制表
将查询的结果放入一张新表,以下将创建一张新表,表的内容是emp里的内容:
mysql> create table temp as select * from emp;
Query OK, 14 rows affected (0.05 sec)
Records: 14 Duplicates: 0 Warnings: 0
快速删除表数据
delete语句删除数据原理:只是将数据库中的数据删除,而在物理存储的数据并未删除,依然占用着一定的空间,所以可以进行回滚回复数据。
缺点:删除效率比较低
优点:支持回滚数据
下面我们来介绍一个快速删除表数据的语法:truncate。
mysql> truncate table dept_bak;
此操作会删除表中的全部数据,并且无法回滚,优点是删除的效率较高,主要用于亿级大表删除操作。
【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】
一、Python编程入门到精通

二、接口自动化项目实战
三、Web自动化项目实战

四、App自动化项目实战
五、一线大厂简历

六、测试开发DevOps体系
七、常用自动化测试工具

八、JMeter性能测试
九、总结(尾部小惊喜)
生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!
生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!
只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!
相关文章:

MySQL数据库关于表的一系列操作
MySQL中的数据类型 varchar 动态字符串类型(最长255位),可以根据实际长度来动态分配空间,例如:varchar(100) char 定长字符串(最长255位),存储空间是固定的,例如&#…...

Spring基于注解管理bean及全注解开发
文章目录 spring概述Spring定义Spring核心Spring Framework的特点 基于注解管理bean依赖开启组件扫描使用注解定义Bean案例:Autowired注入属性注入set注入形参上注入只有一个构造函数,无注解Autowire注解和Qualifier注解联合 Resource注入Spring全注解开发 spring概…...

QtC++ 技术分析3 - IOStream
目录 iostreamscanf/printfiostream 整体架构流相关类流缓冲区 模板特化后整体结构文件流文件流对象创建常见文件流操作输出格式设定文件流状态 字符串流字符串流内部缓冲区字符串流使用 流缓冲区用户自定义 IO iostream scanf/printf 几种常见的输入输出流函数 scanf 从键盘…...

2023年Q2京东环境电器市场数据分析(京东数据产品)
今年Q2,环境电器市场中不少类目表现亮眼,尤其是以净水器、空气净化器、除湿机等为代表的环境健康电器。此外,像冷风扇这类具有强季节性特征的电器也呈现出比较好的增长态势。 接下来,结合具体数据我们一起来分析Q2环境电器市场中…...

TCP/UDP的首部
TCP/UDP首部信息 TCP首部第一个4字节第二个4字节与第三个4字节第四个4字节第五个4字节选项最大报文段长度(MSS)选项窗口扩大选项时间戳选项 什么时候发送RST包UDP首部 TCP首部 TCP 首部长度为20字节,加上选项部分最大可达60字节。 第一个4…...
Kubernetes(K8s)从入门到精通系列之四:K8s的基本概念和术语之集群类
Kubernetes K8s从入门到精通系列之四:K8s的基本概念和术语之集群类 一、Master二、Node三、命名空间集群表示一个由Master和Node组成的K8s集群。 一、Master Master指的是集群的控制节点。在每个K8s集群都需要有一个或一组被称为Master的节点,来负责整个集群的管理和控制。M…...

黑马头条---day1
手机端查看 docker 容器,镜像操作命令 1、docker删除所有镜像命令 删除所有镜像的命令是Docker中一个非常常见的操作。下面是具体的实现步骤和命令示例: $ docker stop $(docker ps -aq) 停止所有正在运行的容器。 $ docker rm $(docker ps -aq) 删…...

【序列化工具JdkSerialize和Protostuff】
序列化工具对比 JdkSerialize:java内置的序列化能将实现了Serilazable接口的对象进行序列化和反序列化, ObjectOutputStream的writeObject()方法可序列化对象生成字节数组 Protostuff:google开源的protostuff采用更为紧凑的二进制数组&#…...

C++ 多线程编程导论(下)
文章目录 参考资料线程安全(续)门闩与屏障——latch 对象与 barrier 对象门闩(latch)屏障(barrier) 一次性调用——once_flag 对象与 call_once 函数 异步任务未来与承诺——future 对象与 promise 对象fut…...

Java并发系列之一:JVM线程模型
什么是线程模型: Java字节码运行在JVM中,JVM运行在各个操作系统上。所以当JVM想要进行线程创建回收这种操作时,势必需要调用操作系统的相关接口。也就是说,JVM线程与操作系统线程之间存在着某种映射关系,这两种不同维…...

容灾独家技术揭秘:HyperBDR无主机数据同步技术
01、一对一单机热备-传统灾备方式 单机热备是一种备份解决方案,它使用两台服务器来确保高可用性,是市场上最为常见的灾备模式。 在单机热备中,一台主服务器和一台备用服务器保持同步,以确保在主服务器出现故障或宕机时可以立即切换…...

FANUC机器人SRVO-050碰撞检测报警和SRVO-053干扰值过大故障报警总结
FANUC机器人SRVO-050碰撞检测报警和SRVO-053干扰值过大故障报警总结 前面和大家分享了关于SRVO-050碰撞检测报警和SRVO-053干扰值过大的原因分析以及处理方法,感兴趣的朋友可以参考以下链接中的内容: FANUC机器人SRVO-050碰撞检测报警原因分析及处理对策...

微信如何提高回复信息速度?
规范流程话术有什么用?为了提高回复客户的效率和质量,可以事先设计好的一套标准化的对话模板。它通常包括多个环节和问题,帮助客服人员或销售人员在与客户沟通时,按照标准化的流程进行,以提高工作效率和客户满意度。 如…...

模拟Stevens Lewis描述的小型飞机纵向动力学的非线性动态反演控制器研究(Matlab代码实现)
目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 💥1 概述 针对Stevens和Lewis描述的小型飞机纵向动力学的非线性动态,研究非线性动态反演控制器可以是一个有趣的课题。动态反演控制器的目标…...

【C++从0到王者】第十二站:vector基本使用
文章目录 一、vector基本介绍二、vector的基本使用三、vector\<char> 和string的区别四、vector接口介绍1.vector的模板参数2.构造函数3.迭代器4.size和max_size5.resize和reserve6.operator[]和at7.front和back8.data9.push_back和pop_back10.insert和erase11.assign12.…...

了解Unity编辑器之组件篇Miscellaneous(九)
一、Aim Constraint:是一种动画约束,用于使一个对象朝向另一个对象或一个指定的矢量方向 Activate按钮:用于激活或停用Aim Constraint。当Aim Constraint处于激活状态时,其约束效果将应用于目标对象。 Zero按钮:用于将…...
自动驾驶小车
开发自动驾驶小车涉及多个方面,包括硬件和软件。下面是一般情况下开发自动驾驶小车的主要步骤: 确定需求和功能:明确您的自动驾驶小车的目标和应用场景,确定需要的功能和特性,例如感知、决策、控制等。 硬件选择和安…...

机器学习深度学习——多层感知机的从零开始实现
👨🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——多层感知机 📚订阅专栏:机器学习&&深度学习 希望文章对你们有所帮助 为…...
Redis的基本使用命令
Redis的使用命令 Redis是一个开源的使用ANSI C编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash…...
Ts入门到放弃
TS 的核心能力在于给 JS 提供静态类型检查,是有类型定义的 JS 的超集,包括 ES5、ES5 和其他一些诸如泛型、类型定义、命名空间等特征的集合。 本次仅会针对类型声明部分配合示例进行着重介绍,更详细的内容以及特性可以查看 Typescript handb…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
Web中间件--tomcat学习
Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机,它可以执行Java字节码。Java虚拟机是Java平台的一部分,Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...
上位机开发过程中的设计模式体会(1):工厂方法模式、单例模式和生成器模式
简介 在我的 QT/C 开发工作中,合理运用设计模式极大地提高了代码的可维护性和可扩展性。本文将分享我在实际项目中应用的三种创造型模式:工厂方法模式、单例模式和生成器模式。 1. 工厂模式 (Factory Pattern) 应用场景 在我的 QT 项目中曾经有一个需…...