【发布时间】:2020-05-13 00:29:52
【问题描述】:
我有一个产品表,其中我将产品图像路径存储为 JSON 字符串(MariaDB 中的 LONGTEXT 类型),但是,当我使用 Node.js 查询数据库以获取产品列表并将数据发送到客户端时-side,它将图像路径作为字符串而不是数组对象接收。
问题:有没有办法告诉 MySQL/MariaDB 将 LONGTEXT 字段作为 JSON 返回,或者我需要在 Node.js 中创建一个辅助函数来完成这项工作?
【问题讨论】:
我有一个产品表,其中我将产品图像路径存储为 JSON 字符串(MariaDB 中的 LONGTEXT 类型),但是,当我使用 Node.js 查询数据库以获取产品列表并将数据发送到客户端时-side,它将图像路径作为字符串而不是数组对象接收。
问题:有没有办法告诉 MySQL/MariaDB 将 LONGTEXT 字段作为 JSON 返回,或者我需要在 Node.js 中创建一个辅助函数来完成这项工作?
【问题讨论】:
您可以尝试使用 convert() JSON
CONVERT( your_long_text_col, JSON)
测试
select concat('"', CONVERT( '{"id": 1, "name": "Monty"}', JSON), '"');
【讨论】:
SELECT concat('"', CONVERT(imgs, JSON), '"') from products; 但是它在JSON), '"')附近抛出错误1064