如果MySQL中的字段值为NULL,我会丢失内存吗?

时间:2014-08-17 02:05:56

标签: php mysql

假设我使用varchar设置了size=200字段。我的问题是,在MySQL中,即使字段包含空值,我是否会在每次插入数据库时​​丢失内存?如果它会丢失,有没有办法保存它们?

2 个答案:

答案 0 :(得分:2)

  1. 将其留给数据库引擎
  2. 不,你不会
  3. 实际上并不重要
  4. 关键字为dynamic rowsize Dynamic Table Characteristics

答案 1 :(得分:0)

只要它们是varchar和mysql,否则,在插入null时不要使用这200个字符。

但是,这是一个空间问题,而不是内存问题。它产生了很大的不同,因为磁盘空间现在非常便宜,所以通过尝试使用更少的存储来优化您的架构是没有意义的。

恰恰相反,我宁愿将该字段定义为char(200)并且每行最多浪费200个字符,而作为回报,数据库引擎只需通过计算行就知道存储中的确切偏移量,因此节省时间和cpu周期,这是不便宜的。