olarak değiştirme Aşağıdaki, "kapsayıcılar" adında bir tablonun bir pasajıdır.Bir sütunu dize dizisinden postgresql
Column | Type | Modifiers
--------------------+-----------------------------+---------------------------------
id | uuid | not null
name | character varying(255) |
products | character varying | default '{}'::character varying
nasıl "character varying[]"
için products
sütun ve default '{}'::character varying[]
için gelen düzenleyiciler değiştirebilir ? Aslında, bir dizeyi bir dize dizisine dönüştürmek istiyorum. Ürün sütununun karakter sayısı üzerinde bir sınırı olmadığını unutmayın.
alter table "containers" alter "products" type character varying[];
Postgres varchar[]
için varchar
örtük dökme yoktur aşağıdaki hatayı
ERROR: column "products" cannot be cast to type character varying[]
Teşekkürler. Yine de bu döküm hatası alınıyor - HATA: sütun "ürünleri" için varsayılan yazıyı yazmak için kullanılamaz [] – papdel
işlevi oluşturmak veya değiştirmek string_to_string_array (değer karakteri değişiyor) , $ select array [$ 1] $$; ve daha sonra tablosu "kapsayıcılar" değiştirmek "ürünleri" karakterini değiştirmek için [] string_to_string_array (ürünler) karakterini değiştirir; aynı hatayı da attı. – papdel
Mevcut varsayılan değeri nasıl değiştiririm? – papdel