sql >> Database >  >> RDS >> PostgreSQL

Stel lc_monetary in voor PostgreSQL

Landinstellingen zijn afhankelijk van het besturingssysteem. Controleer welke talen beschikbaar zijn

select * 
from pg_collation
where collname ~ any(array['DE', 'FR', 'GR', 'IE'])

  collname  | collnamespace | collowner | collencoding | collcollate | collctype  
------------+---------------+-----------+--------------+-------------+------------
 en_IE      |            11 |        10 |            6 | en_IE.utf8  | en_IE.utf8
 en_IE.utf8 |            11 |        10 |            6 | en_IE.utf8  | en_IE.utf8
(2 rows)

Nou, mijn Ubuntu spreekt geen Duits, Frans of Grieks, maar de Ieren spreken Engels en betalen in euro.

set lc_monetary to "en_IE.utf8";
select 10::money;

 money  
--------
 €10.00
(1 row)

In Windows is het waarschijnlijk dat de comp Duits spreekt:

set lc_monetary to "de-DE";

Helaas, pg_collation laat dit niet zien.




  1. Instructie invoegen met waar-clausule niet wordt uitgevoerd op nodejs mysql

  2. Django:Tafel bestaat niet

  3. Hoe opgeslagen procedures te schrijven met behulp van tabellen uit een ander schema?

  4. Gebruik IDENT_CURRENT() om de huidige identiteitswaarde op een identiteitskolom in SQL Server te retourneren