将JSON customer_contacts添加到客户表

时间:2019-05-28 04:50:04

标签: mysql json

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

  

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

INSERT INTO customers(customers_contacts)

Values(

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

);

因此,我使用ALTER TABLE客户添加COLUMN users_contacts json; -可用于创建列。

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

INSERT INTO customers(customers_contacts)

Values(

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

);

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

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

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

1 个答案:

答案 0 :(得分:0)

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

  1. PK |客户编号| customers_contacts |

  2. 1 1234567890 {“ some”:“ json值”}

  3. 2 null {“ some”:“ jsonvalue”}

由于CustomerNumber字段不能为空,因此必须设置默认值或删除不为空