尝试为 MySql 数据库运行语句时,我不断收到错误消息。我想要做的是将列名称的类型从 BLOB 更改为 JSON。
声明如下:
ALTER TABLE `main_db`.`main_table`
CHANGE COLUMN `name` `name` JSON CHARACTER SET 'utf8mb4' NULL DEFAULT NULL ;
这是 workbench 自动为我创建的东西,当我运行它时...我得到这个错误:
Operation failed: There was an error while applying the SQL script to the database.
Executing:
ALTER TABLE `main_db`.`main_table`
CHANGE COLUMN `name` `name` JSON CHARACTER SET 'utf8mb4' NULL DEFAULT NULL ;
ERROR 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CHARACTER SET 'utf8mb4' NULL DEFAULT NULL' at line 2
SQL Statement:
ALTER TABLE `main_db`.`main_table`
CHANGE COLUMN `name` `name` JSON CHARACTER SET 'utf8mb4' NULL DEFAULT NULL
任何帮助将不胜感激。
谢谢:)
最佳答案
如何通过 TEXT 分两步将列转换为 JSON?
ALTER TABLE `main_db`.`main_table` MODIFY `name` TEXT;
ALTER TABLE `main_db`.`main_table` MODIFY `name` JSON;
使用 MODIFY instead of CHANGE因为您不需要重命名该列。
关于php - 尝试将 MYSQL 的表字段类型从 BLOB 更改为 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42311153/