I have a defined an array field in postgresql 9.4 database:
character varying(64)[]
Can I have an empty array e.g. {} for default value of that
You need to use the explicit array initializer and cast that to the correct type:
array
ALTER TABLE public.accounts ALTER COLUMN pwd_history SET DEFAULT array[]::varchar[];