使用函数将MySQL数字字段更改为char

时间:2017-02-02 08:02:21

标签: mysql

我在MySQL DB中有一个表,用于存储IP地址。它将其存储为数字(int)。我想改变结构使用string(char)。

是否可以使用单个ALTER TABLE语句?据我在Postgres中可以看到,可以为ALTER TABLE指定转换函数,但我没有看到MySQL的等效函数。

解决方法当然是:

  • 通过添加新的char()字段来改变表格
  • 使用inet_ntoa
  • 更新旧字段中的新字段
  • 通过删除旧字段来修改表格
  • 最后将新字段重命名为与旧字段相同的名称

但也许有一个更简单的解决方案?

1 个答案:

答案 0 :(得分:1)

您可以简单地将列更改为varchar。 mysql会自动转换值。我可以用mysql 5.6来证实这一点。 但在此之前,您应该定义创建备份,并尝试使用小型测试表。