gpt4 book ai didi

Mysql 将默认值设置为 json 类型的列

转载 作者:行者123 更新时间:2023-12-03 14:00:19 28 4
gpt4 key购买 nike

我听说8.0.13之前的mysql版本接受json类型列的默认值,所以我使用cmd:

ALTER TABLE templates CHANGE COLUMN values JSON NOT NULL DEFAULT '{}' ;

但收到错误:
Error Code: 1101. BLOB, TEXT, GEOMETRY or JSON column 'values' can't have a default value

那么我该如何解决呢?

我正在使用 mysql 版本 8.0.19 和客户端工具 Workbench

最佳答案

documentation says :

The BLOB, TEXT, GEOMETRY, and JSON data types can be assigned a default value only if the value is written as an expression, even if the expression value is a literal.


您可以通过用括号将文字值括起来来使默认表达式成为表达式:
ALTER TABLE templates CHANGE COLUMN values JSON NOT NULL DEFAULT ('{}') ;
或:
ALTER TABLE templates CHANGE COLUMN values JSON NOT NULL DEFAULT (JSON_OBJECT()) ;

关于Mysql 将默认值设置为 json 类型的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61169030/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com