Vai al contenuto

Formattatore PostgreSQL

Formattate query e script PostgreSQL secondo le regole di Postgres per i corpi di funzione tra virgolette con il simbolo del dollaro, le stringhe di escape E'', gli identificatori tra virgolette doppie, i cast :: e gli operatori JSON come ->> e @>. Clausole come RETURNING, ON CONFLICT e DO UPDATE SET iniziano su righe separate; stringhe, commenti o parentesi non chiusi vengono segnalati con riga e colonna. Pensato per gli sviluppatori che leggono migrazioni e query.

Reimposta

Domande frequenti

Quale sintassi PostgreSQL viene riconosciuta?

Vengono riconosciute le stringhe standard con apici raddoppiati, le stringhe E'' con escape tramite barre rovesciate, le stringhe Unicode U&'', le stringhe binarie B'' e X'', gli identificatori tra virgolette doppie e i parametri $1. Vengono lette anche le stringhe tra virgolette con il simbolo del dollaro, come $$...$$ o $body$...$body$.

Che cosa succede ai corpi delle funzioni tra virgolette con il simbolo del dollaro?

Un corpo tra virgolette con il simbolo del dollaro viene mantenuto esattamente com'è, perché per PostgreSQL è una stringa. L'istruzione CREATE FUNCTION che lo contiene viene formattata, ma il corpo resta invariato.

I cast e gli operatori vengono mantenuti intatti?

Sì. I cast come value::integer restano uniti e gli operatori come ->, ->>, #>, #>>, @>, <@, ?|, ?&, @@ e gli operatori di espressione regolare ~ e ~*, con le rispettive forme negate, non vengono mai separati. In PostgreSQL # è un operatore, non un commento.

Quali clausole di PostgreSQL vanno su una riga dedicata?

RETURNING, ON CONFLICT, DO UPDATE SET, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE e FOR KEY SHARE restano unite come clausole. Anche le consuete clausole SELECT, FROM, WHERE, GROUP BY, ORDER BY, LIMIT e OFFSET iniziano su righe dedicate.

I commenti vengono mantenuti?

Sì. I commenti su riga singola e quelli su blocco restano al loro posto; i commenti annidati su blocco, consentiti da PostgreSQL, vengono interpretati correttamente. I commenti su blocco multilinea vengono reindentati nella nuova posizione.

Supporta MERGE?

Sì. I rami WHEN MATCHED e WHEN NOT MATCHED iniziano su righe nuove, così le istruzioni MERGE di PostgreSQL 15 e versioni successive restano leggibili.

Modifica le maiuscole delle parole chiave?

No. Le parole chiave e gli identificatori mantengono le maiuscole e minuscole originali. In PostgreSQL gli identificatori tra virgolette distinguono tra maiuscole e minuscole e non vengono mai modificati.

Quali errori vengono rilevati?

Le stringhe non chiuse, gli identificatori tra virgolette, le stringhe tra dollari e i commenti su blocco non chiusi, oltre alle parentesi non bilanciate, vengono segnalati con riga e colonna. Lo strumento non verifica la grammatica completa di PostgreSQL né lo schema.

Qual è la dimensione massima dell'input?

Fino a 1 MB per richiesta e 128 KB per istruzione. I file di migrazione con molte istruzioni vengono formattati un'istruzione alla volta e separati da righe vuote.

Posso scegliere l'indentazione?

Sì. Usate 2 o 4 spazi oppure le tabulazioni. Il vostro SQL viene elaborato solo in memoria e non viene mai salvato.

Informazioni su OneClick Pro

OneClick Pro è una raccolta gratuita di oltre 150 strumenti web per le attività quotidiane: convertire immagini e unità di misura, formattare e convalidare codice, controllare domini e SEO, lavorare con testi, date e numeri. Ogni strumento funziona senza registrazione né abbonamento; i dati inseriti vengono usati solo per calcolare il risultato e non vengono mai salvati. Usatelo come cassetta degli attrezzi per attività occasionali oppure aggiungete ai preferiti gli strumenti che usate ogni giorno.