Per comprendere i tipi di array PostgreSQL multidimensionali, considera la seguente citazione dal manuale:
Anche l'attuale implementazione non applica il numero dichiarato di dimensioni. Le matrici di un particolare tipo di elemento sono tutte considerate dello stesso tipo, indipendentemente dalle dimensioni o dal numero di dimensioni. Quindi, dichiarando la dimensione dell'array o il numero di dimensioni inCREATE TABLE
è semplicemente documentazione; non influisce sul comportamento in fase di esecuzione.
Internamente, i tipi text[]
, text[][]
sono gli stessi per PostgreSQL. Se la colonna contiene effettivamente array di testo bidimensionali, dovrai corrispondere alle dimensioni in Java. Ma potrebbe contenere anche array a 1 o 3 dimensioni. PostgreSQL lo consentirebbe.
Nota anche che text
e character varying
(varchar
) sono diversi tipi di dati in PostgreSQL (facendo praticamente lo stesso quando varchar
non ha modificatore di lunghezza). Inizia leggendo i tipi di carattere nel manuale.