我在PostgreSQL 9.数组字段在数据库中定义:( W$ O" P v! J: U5 d
character varying(64)[]我能有一个空数组,比如{}作为这个字段的默认值吗?什么是语法?0 ~) j: c6 N) Z0 h% q
若只设置方括号{},则会出现以下错误:+ }/ l* ?( G! F" p" d2 h1 s+ T
SQL error:ERROR: syntax error at or near "{"LINE 1: ...public"."accounts" ALTER COLUMN "pwd_history" SET DEFAULT ^In statement:ALTER TABLE "public"."accounts" ALTER COLUMN "pwd_history" SET DEFAULT 8 P& z( e7 f( x0 H解决方案: + N5 H, [" x) T8 {/ P: l 您需要使用显式array将初始化程序强制转换为正确类型:2 i, R+ B7 [3 g% e
ALTER TABLE public.accounts ALTER COLUMN pwd_history SET DEFAULT array[]::varchar[];