我正在尝试将JSON类型的列添加到我的一个表中。我正在使用带有phpmyadmin的XAMPP。服务器版本为10.1.31-MariaDB。innodb版本为5.6.36-83.0
当我尝试从phpmyadmin的选择框中选择JSON类型时,我看不到任何关于JSON的内容。此外,运行此查询会导致“语法错误”:
ALTER TABLE my_table
ADD `some_column` json;我在手册和各种教程中都看到,mysql确实支持JSON类型。
是版本问题吗?老实说,我对整个mysql版本控制的情况感到非常困惑。我在维基百科上看到,最新的稳定版本是8.0.11,而我的似乎是完全不同的版本(我不知道哪个是相关的:“服务器”还是"innodb“版本)我会假设XAMPP使用的是最新的mysql版本,但也许我错了。
有人能解释一下这个问题吗?如果这实际上是一个版本问题,那么是否可以在使用XAMPP的同时进行升级?
发布于 2018-04-29 05:53:56
这种数据类型似乎只在MariaDB版本10.2.7中可用。您可以使用LONGTEXT,因为根据文档,JSON只是LONGTEXT的别名。
发布于 2018-04-29 05:49:34
是的,这是一个版本问题,请参阅https://mariadb.com/kb/en/library/mariadb-vs-mysql-compatibility/
您使用的是MariaDB 10.1,它基于MySQL 5.6/5.7 (因此是innodb版本)。但是JSON数据类型是在MySQL 8.0中添加的。看起来到目前为止,MariaDB还不支持JSON数据类型。
发布于 2018-04-29 06:00:18
版本5.7中添加的JSON数据类型,并在8中进行了改进。MariaDB没有JSON数据类型
https://stackoverflow.com/questions/50081310
复制相似问题