【MySQL】存储引擎 - CSV详解

发布于:2025-05-09 ⋅ 阅读:(18) ⋅ 点赞:(0)

📢博客主页: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详解 做了一个较为详细的介绍,不知道对你有没有帮助呢

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


网站公告

今日签到

点亮在社区的每一天
去签到