问题描述
sql 变更脚本:
alter table table_name ADD COLUMN IF NOT EXISTS chk_col jsonb not null
DEFAULT '{}'::jsonb;
在此脚本中,我收到“错误:已存在:该列已存在”但表中不存在列 chk_col。
解决方法
你能解释一下你的设置吗? 你用的是什么版本? 是否需要其他步骤来重现? 我无法在 2.7.1.1 中重现:
yugabyte=# create database fshije
yugabyte=# \c fshije
fshije=# create table table_name(id bigint);
fshije=# alter table table_name ADD COLUMN IF NOT EXISTS chk_col jsonb not null DEFAULT '{}'::jsonb;
fshije=# \d table_name
Table "public.table_name"
Column | Type | Collation | Nullable | Default
---------+--------+-----------+----------+-------------
id | bigint | | |
chk_col | jsonb | | not null | '{}'::jsonb