mysql存储json
时间: 2025-01-22 13:35:13 浏览: 38
### 如何在 MySQL 中存储 JSON 数据
#### 创建包含 JSON 列的表
为了有效地管理 JSON 类型的数据,在创建表格时应定义特定字段来保存这些数据。下面是一个例子,展示了如何创建一个带有 `JSON` 列类型的表:
```sql
CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
details JSON
);
```
此命令会建立一张名为 `products` 的新表,其中有一个叫作 `details` 的列用于储存 JSON 格式的文档[^1]。
#### 插入 JSON 数据到表中
一旦有了适当结构化的表之后,就可以通过 SQL 语句向其内插入含有 JSON 值的记录了。这里给出了一种方式来进行这样的操作:
```sql
INSERT INTO products (name, details)
VALUES ('Laptop', '{"brand": "Dell", "price": 999}');
```
上述代码片段表示往 `products` 表里加入一条关于笔记本电脑的信息条目,其中包括品牌名 (`Dell`) 和价格 ($999)[^2]。
另外一种方法是利用函数 `CAST()` 或者 `CONVERT()` 来转换字符串为 JSON 格式再存入数据库:
```sql
INSERT INTO products (name, details)
VALUES ('Smartphone', CAST('{"model": "iPhone X", "os": "iOS"}' AS JSON));
```
这段指令同样实现了相同的效果——即把智能手机的相关属性作为 JSON 对象写进了对应的字段之中[^3]。
对于来自编程语言环境下的程序来说,通常先将复杂的数据结构序列化成 JSON 字符串形式后再发送给 MySQL 进行持久化;而在读取的时候则反序列化回原来的形式以便进一步处理。Python 提供了内置库 `json` 可以轻松完成这项工作,比如使用 `json.dumps()` 函数可将字典转化为 JSON 字符串,而 `json.loads()` 能够做相反的事情[^4]。
阅读全文
相关推荐


















