【MySQL】存储引擎 - CSV详解

📢博客主页:https://blog.csdn.net/2301_779549673

📢博客仓库:https://gitee.com/JohnKingW/linux_test/tree/master/lesson

📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

📢本文由 JohnKi 原创,首发于 CSDN🙉

📢未来很长,值得我们全力奔赴更美好的生活✨

文章目录


CSV逗号分隔值(Comma-Separated Values)的缩写,以纯文本形式存储表格数据。

🏳️‍🌈一、创建 CSV 表

在MySQL8.0中 InnoDB 是默认引擎,所以在创建表时需要指定 ENGINE=CSV

创建 CSV 表时,服务器会创建三个文件,其中以 .cSV 为扩展名的文件用于以逗号分隔值的格式保存数据

扩展名为 .CSM 的文件,用于存储表的状态和表中的行数;以 .sdi 为后缀的表信息描述文件(JSON格式)

🏳️‍🌈二、CSV表中的数据

向表中插入数据

由于 .CSV 是⽂件格式的⽂件,我们在命令⾏查看⽂件内容如下:


CSV 格式可以被 Microsoft Excel 等电⼦表格应⽤程序读取和写⼊

🏳️‍🌈三、CSV 表的修复和检查

CSV 存储引擎⽀持使⽤ CHECK TABLEREPAIR TABLE 语句来验证或修复损坏的 CSV 表

当⽤⽂本编辑器打开t_csv.CSV⽂件,并写⼊⼀条新数据,如下所⽰:

复制代码
root@guangchen-vm:/var/lib/mysql/test_db# vim t_csv.CSV #编辑CSV⽂件
1,"record one"
2,"record two"
3,"record three" # ⼿动写⼊⼀条新数据, 保存并退出

再次执⾏查询语句发现没有第三条数据,

这是由于.CSM⽂件中并没有记录新增的⾏,可以使⽤ REPAIR TABLE 语句修改表内容和CSM⽂件

检查损坏的表时会返回错误,例如把t_csv.CSV⽂件的内容进⾏修改

复制代码
root@guangchen-vm:/var/lib/mysql/test_db# vim t_csv.CSV #编辑
1,"record one"
2,"record two"
3 					# 删除内容,构造⼀个错误格式的CSV数据

运⾏检查语句提⽰错误

运⾏修复语句后,错误的数据被删除


注意 :在修复期时,只有从CSV 文件第一行到第一个损坏行的行被复制到新表中,从第一个损坏的行到表末尾的所有其他行都会被删除,即使是有效数据。

🏳️‍🌈四、CSV表限制

  • CSV 存储引擎不支持索引;
  • CSV 存储引擎不支持分区
  • 使用 CSV 存储引擎创建的表中的所有列都必须为 NOT NULL。

👥总结

本篇博文对 【MySQL】存储引擎 - CSV详解 做了一个较为详细的介绍,不知道对你有没有帮助呢

觉得博主写得还不错的三连支持下吧!会继续努力的~

相关推荐
q***64972 分钟前
SpringSecurity踢出指定用户
android·前端·后端
Coding_Doggy5 分钟前
链盾shieldchiain | 团队功能、邀请成员、权限修改、移除成员、SpringSecurity、RBAC权限控制
java·开发语言·数据库
q***76665 分钟前
SpringSecurity 实现token 认证
android·前端·后端
凯子坚持 c7 分钟前
不用复杂配置!本地 Chat2DB 秒变远程可用,跨网操作数据库就这么简单
数据库
q***65697 分钟前
Windows环境下安装Redis并设置Redis开机自启
数据库·windows·redis
Chejdj11 分钟前
ViewModel#onCleared的实现原理
android·源码阅读
q***965814 分钟前
Windows版Redis本地后台启动
数据库·windows·redis
q***816417 分钟前
【Redis】centos7 systemctl 启动 Redis 失败
数据库·redis·缓存
q***098020 分钟前
MySQL 常用 SQL 语句大全
数据库·sql·mysql
q***649721 分钟前
VS与SQL Sever(C语言操作数据库)
c语言·数据库·sql