# PostgreSQL formatētājs

Formatējiet PostgreSQL vaicājumus un skriptus, ievērojot Postgres noteikumus par funkciju pamatdaļām ar dolāra zīmju citēšanu, E'' atsoļa virknēm, identifikatoriem dubultpēdiņās, :: pārveidošanu un JSON operatoriem, piemēram, ->> un @>. Tādas klauzulas kā RETURNING, ON CONFLICT un DO UPDATE SET tiek ievietotas katra savā rindā, un par neaizvērtām virknēm, komentāriem vai iekavām tiek ziņots, norādot rindu un kolonnu. Paredzēts izstrādātājiem, kas lasa migrācijas un vaicājumus.

## Bieži uzdotie jautājumi

### Kādu PostgreSQL sintaksi tas saprot?

Tiek atpazītas standarta virknes ar dubultotām pēdiņām, E'' virknes ar slīpsvītras atsoļa rakstzīmēm, U&'' Unicode virknes, B'' un X'' bitu virknes, identifikatori dubultpēdiņās un $1 parametri. Tiek nolasītas arī virknes ar dolāra zīmju citēšanu, piemēram, $$...$$ vai $body$...$body$.

### Kas notiek ar funkciju pamatdaļām dolāra zīmju citējumā?

Dolāra zīmju citējumā ievietota pamatdaļa tiek saglabāta tieši tāda, kāda tā bija, jo PostgreSQL to uztver kā virkni. Apkārtējais CREATE FUNCTION priekšraksts tiek formatēts, bet pati pamatdaļa netiek mainīta.

### Vai pārveidojumi un operatori tiek saglabāti neskarti?

Jā. Tipizācijas, piemēram, value::integer, paliek kopā, un operatori, piemēram, ->, ->>, #>, #>>, @>, <@, ?|, ?&, @@, kā arī regulārās izteiksmes operatori ~ un ~* ar to noliegtajām formām nekad netiek sadalīti. PostgreSQL gadījumā # ir operators, nevis komentārs.

### Kuras PostgreSQL klauzulas tiek novietotas atsevišķā rindā?

RETURNING, ON CONFLICT, DO UPDATE SET, FOR UPDATE, FOR NO KEY UPDATE, FOR SHARE un FOR KEY SHARE paliek kopā kā klauzulas. Arī parastās SELECT, FROM, WHERE, GROUP BY, ORDER BY, LIMIT un OFFSET klauzulas tiek sāktas jaunā rindā.

### Vai komentāri tiek saglabāti?

Jā. Rindas komentāri un bloka komentāri paliek savās vietās, un ligzdoti bloka komentāri, ko atļauj PostgreSQL, tiek nolasīti pareizi. Vairākrindu bloka komentāri tiek atkārtoti ievilkti atbilstoši to jaunajai atrašanās vietai.

### Vai tiek atbalstīts MERGE?

Jā. WHEN MATCHED un WHEN NOT MATCHED atzari tiek sākti jaunā rindā, tāpēc MERGE priekšraksti no PostgreSQL 15. versijas un jaunākiem laidieniem ir pārskatāmi.

### Vai tiek mainīts atslēgvārdu burtu reģistrs?

Nē. Atslēgvārdi un identifikatori saglabā jūsu rakstīto reģistru. PostgreSQL pēdiņās ievietotie identifikatori ir reģistrjutīgi, un tie nekad netiek mainīti.

### Kādas kļūdas tiek noteiktas?

Par neaizvērtām virknēm, pēdiņās ievietotiem identifikatoriem, dolārzīmju norobežotām virknēm un bloka komentāriem, kā arī nelīdzsvarotām iekavām tiek ziņots, norādot rindu un kolonnu. Rīks nepārbauda visu PostgreSQL gramatiku vai jūsu shēmu.

### Cik liels var būt ievades apjoms?

Līdz 1 MB vienā pieprasījumā un 128 KB vienā priekšrakstā. Migrācijas faili ar daudziem priekšrakstiem tiek formatēti pa vienam, un tos atdala tukšas rindas.

### Vai varu izvēlēties atkāpi?

Jā. Izvēlieties 2 vai 4 atstarpes vai tabulācijas rakstzīmes. Jūsu SQL tiek apstrādāts tikai atmiņā un nekad netiek saglabāts.

Jūsu reklāma šeit?

[Rakstiet mums](mailto:hi@dennn.is?subject=Rekl%C4%81ma%20vietn%C4%93%20OneClick%20Pro)

[Reklāma Aģentiem gatavais spraudņu komplekts vietnei WordPress.](https://sleekwp.com/?ref=oneclickpro)
