如何创建具有 json 数据类型列的表
Posted
技术标签:
【中文标题】如何创建具有 json 数据类型列的表【英文标题】:how to create a table with json data type column 【发布时间】:2018-11-04 03:45:43 【问题描述】:phpMyAdmin - 版本 4.8.0.1(最新)。
我正在尝试创建一个包含json
列的表。
CREATE TABLE `book` (
`id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(200) NOT NULL,
`tags` json DEFAULT NULL, // line 4
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
结果 - error in your SQL syntax... on line 4
当我转到现有表的 Structure
选项卡并尝试更改列类型时 - 列表中没有这样的选项。
phpMyAdmin 好像不支持这种数据。
请问有什么解决办法?
【问题讨论】:
您使用的是什么版本的 mysql?此数据类型是在 5.7 中添加的。 phpMyAdmin 不是数据库,它只是一个 Web 界面。重要的是 MySQL 的版本,而不是 PMA 的版本。 PMA 从 4.6.0 开始支持 JSON 数据类型,但它可能会检查数据库版本并在数据库较旧时隐藏它。 @Barmar,在我看到的右侧信息侧边栏 - 5.0.12。但我想我无法升级 mysql。 哇,这是一个非常旧的 MySQL 版本。与您的数据库管理员交谈。 【参考方案1】:是的,您可以从旧版本升级到新版本 - 这就是几个月前我在 localhost 上所做的。
对于我来说,MySQL Workbench 做得很顺利而且没有错误,请参考https://dev.mysql.com/doc/workbench/en/wb-migration-database-mysql.html
如果您在迁移过程中遇到任何问题,请在此处提问,我们可能会在整个过程中为您提供帮助。
【讨论】:
以上是关于如何创建具有 json 数据类型列的表的主要内容,如果未能解决你的问题,请参考以下文章
如何找到所有具有 CHAR 数据类型的列并在其中具有数值的表?