mysql - MySQL 将 varchar 转换为 char 有什么作用?

标签 mysql char varchar alter-table alter

当我们添加一个新表时,我们犯了一个错误:一个字段是 varchar(255),但我们必须编写连接查询。 所以我们改变表来创建一个 char(6)。

我的问题是:在这种情况下 MySQL 是什么? 修剪得当吗?

最佳答案

与其担心 MySQL 做什么或不做什么,不如在更改之前自己转换数据。

例如

UPDATE YourTable
SET YourField = LEFT(YourField,6);

ALTER TABLE YourTable MODIFY COLUMN YourField Char(6)

您应该注意,如果您的列数据太长,假设启用严格的 SQL 模式,它不会让您进行更改,请参阅 Shef 的完整答案

关于mysql - MySQL 将 varchar 转换为 char 有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6778440/

相关文章:

mysql - 从转储导入数据库失败

MySQL 的 PHP 变量(SET '$field' = '$value')

c++ - 转换为 C 字符串会给出奇怪的符号

c - 从c中的文件中获取字符

Java调用Char方法收集A到W之间的字符

mysql - #1054 - 未知列

MySQL - TEXT 与 CHAR 和 VARCHAR

php - PDO:调用未定义的方法 DB::query()

php - mysql - 获取用户的最后 Activity

mysql - varchar 或 text - mysql 性能