【问题标题】:Error when importing stored procedure from local machine to centos从本地机器导入存储过程到centos时出错
【发布时间】:2023-01-18 13:54:44
【问题描述】:

我创建了一个存储过程并在我的 Windows 本地计算机上运行。但是当我将它导出和导入到我的 centos 7 机器时,我在 JSON 部分抛出错误。 我的centos MariaDB Server版本是5.5.68。这是版本的原因吗?

DELIMITER $$

/*!50003 CREATE DEFINER=`root`@`localhost` PROCEDURE `Category`(IN DataVal JSON,
    OUT LID INT(11)
    )
BEGIN
    DECLARE nameVal VARCHAR(255) DEFAULT NULL;
    
    END */$$
DELIMITER ;

错误:

ERROR 1064 (42000) at line 6053: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'JSON,
        OUT LID INT(11)
    )
BEGIN
        DECLARE nameVal VARCHAR(255) DEFAULT NULL;
        ' at line 1

【问题讨论】:

    标签: mysql stored-procedures mariadb centos7


    【解决方案1】:

    您遇到的错误可能是因为您的 CentOS 7 机器 (5.5.68) 上的 MariaDB 版本不支持 JSON 数据类型。 JSON 支持首先在 MariaDB 版本 10.2.0 中引入。要解决此问题,您需要将 MariaDB 服务器升级到支持 JSON 的版本,或使用不同的数据类型来存储您的 JSON 数据。或者,您可以使用支持 JSON 的不同数据库管理系统,例如 MySQL 5.7 或更高版本或 PostgreSQL 9.4 或更高版本。

    【讨论】:

      猜你喜欢
      • 2012-12-12
      • 2022-01-14
      • 2016-01-04
      • 1970-01-01
      • 1970-01-01
      • 2014-01-26
      • 1970-01-01
      • 1970-01-01
      • 2015-06-07
      相关资源
      最近更新 更多