首页 > 解决方案 > 将 JSON customers_contacts 添加到客户表中

问题描述

使用您在模块 1 中安装的 classicmodels 数据库和 MySQL 工作台,使用以下键将名为“customers_contacts”的 JSON 字段添加到客户表:

customerNumber、contactLastName 和 contactFirstName。编写一条 SQL 语句,为“customers_contacts”字段插入至少三个值。使用客户表中的数据。

INSERT INTO customers(customers_contacts)

Values(

'{"customerNumber" : 103, "customerLastName" : "Schmitt", "customerFirstName" : "Carine"}'

);

所以我使用 ALTER TABLE customers ADD COLUMN customers_contacts json; - 用于创建列。

但是当我去添加以下值时:

INSERT INTO customers(customers_contacts)

Values(

'{"customerNumber" : 103, "customerLastName" : "Schmitt", "customerFirstName" : "Carine"}'

);

我收到错误代码 1364:字段 'customerNumber' 没有默认值。

我正在使用 mysql 5.7 和 mysql 工作台。一个

任何帮助,将不胜感激。谢谢!

标签: mysqljson

解决方案


实际上,当您在“customers_contacts”中插入新的 json 值时,您处理字段的问题是“customerNumber”,“customerNumber”没有默认值。更改表格并为客户编号设置默认值,如“0000000000”。保存更改并插入 json 值。例如:你正在尝试做的是这个

  1. PK |客户编号 |customers_contacts |

  2. 1 1234567890 {“一些”:“json值”}

  3. 2 空{“一些”:“jsonvalue”}

由于您的 CustomerNumber 字段不能为 null,您必须设置默认值或删除 not null


推荐阅读