gpt4 book ai didi

postgresql - 更改域更改类型

转载 作者:行者123 更新时间:2023-11-29 11:46:10 25 4
gpt4 key购买 nike

有没有办法改变域类型并将类型更改为新类型?我有一个使用具有 VARCHAR(25) 类型的域的列,我想将长度增加到 150。

最佳答案

你不能。除非你真的必须 - 你不应该(见下面的警告)。

你要做的是:

  1. 重命名现有域
ALTER DOMAIN domain_name RENAME TO doman_name_depricated;
  1. 创建一个与前一个同名的新域,包含新的约束
CREATE DOMAIN doman_name AS VARCHAR(150);
  1. 更改使用此域的所有列的类型。
ALTER TABLE table_name ALTER COLUMN column_name SET DATA TYPE domain_name;

警告 - 这是唯一可能的,因为我们正在扩大域,以便每个值仍然有效。例如,如果您想要缩短值,您将面临表中值变得无效的风险。在这种情况下,您需要一些迁移脚本来修复此值

关于postgresql - 更改域更改类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6324414/

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