首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不丢失数据的情况下更改postgresql数据库中数组的varchar长度

如何在不丢失数据的情况下更改postgresql数据库中数组的varchar长度
EN

Stack Overflow用户
提问于 2018-01-16 16:27:54
回答 1查看 558关注 0票数 0

我尝试使用下面的代码,但出现了一个“数组或数组附近的语法错误”。我搜索了一下,什么也没找到。这样做是可能的吗?谢谢!

代码语言:javascript
复制
alter table "tablename" alter column "columnname" TYPE ARRAY(VARCHAR(200));
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-16 16:31:24

我不清楚是要增加每个条目的长度,还是要增加数组的长度。

数组声明遵循datatype[]格式- []使列成为数组,并且数据类型规范是基类型的规范。

因此,如果您想增加每个数组元素的长度,只需声明一个具有更长varchar长度的数组:varchar(200)[]

代码语言:javascript
复制
alter table "tablename" 
   alter column "columnname" TYPE varchar(200)[];

如果要在数据类型后使用ARRAY关键字that needs to be put

代码语言:javascript
复制
alter table "tablename" 
   alter column "columnname" TYPE varchar(200) array;

如果希望增加数组的长度(=允许更多数组元素),则无需执行任何操作,因为即使指定了数组维数,Postgres也不会强制执行此操作

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48276890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档