mysql - MySQL中MyISAM表中延长某一字段的varchar长度有什么影响?

标签 mysql database varchar

我想将我的 MyISAM 表中的一列长度从 30 扩展到 50,该表目前有 10 亿条数据类型为 varchar 的记录,因为我发现有一些数据在上传过程中被截断,因为字符串是超过30个。

我的问题是,如果我更新此列的长度,是否会更改表中的所有记录?如果是,如果我的数据库中有十亿条记录,需要多长时间?

最佳答案

需要多长时间取决于您的服务器配置以及 MySQL 配置。然而,十亿条记录并不算太大。由于这是 varchar 类型,因此对于不使用获得的额外 20 个字符的行,不会占用大量额外空间。与其他数据类型不同,Varchar 不会根据您的表配置来占用空间,而是根据您存储在其中的数据的实际长度来占用空间。

关于mysql - MySQL中MyISAM表中延长某一字段的varchar长度有什么影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55174625/

相关文章:

javascript - 如何在 PHP Laravel 中使用 SQL 语句打印所有数组?

database - 数据库中的键值

SQLite - 是否可以使非整数主键工作?

mysql - 更新 MySQL 表中的 Varchar 条目

sql-server - 当所需长度 <8000 时,TEXT 比 varchar 有什么优势?

mysql - 更新行,列值表示为键

Mysql:按月搜索数据只能产生一个结果,而不是全部结果

python - 动态添加字段的 django 表单集可以具有持久数据吗?

database - 我如何在学说上使用 'foreign key'?

X.id 后 MySQL LIMIT 20