gpt4 book ai didi

H2:向包含记录的表添加 NOT NULL 列

转载 作者:行者123 更新时间:2023-12-04 06:05:46 26 4
gpt4 key购买 nike

我想添加一个 NOT NULL列到名为 server 的表中.问题是,该表已经包含记录。当我调用 ALTER TABLE server ADD COLUMN full_discovery_duration BIGINT NOT NULL H2 提示 full_discovery_duration可能不为空。我可以通过指定 DEFAULT 0 来解决这个问题。但我不想要 future 插入的默认值。我应该做些什么?

我应该添加带有默认值的列,然后删除 DEFAULT 0来自后续语句中的列定义?有更好的方法吗?

最佳答案

您可以先添加具有默认值的列,然后将默认值设置为 null。然而,据我所知,摆脱默认定义是不可能的。

另一种方法是首先允许空值,然后设置值,然后不允许空值。

drop table server;
create table server(id int);
insert into server values(1);
alter table server
add column
full_discovery_duration bigint;
update server set full_discovery_duration = 0;
alter table server
alter column
full_discovery_duration set not null;

关于H2:向包含记录的表添加 NOT NULL 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8387929/

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