Tipi di dati monetari di PostgreSQL

Tipi di dati monetari di PostgreSQL

Il tipo di dati monetari viene utilizzato per archiviare i dati di valuta nella tabella del database PostgreSQL. IL Tipo di dati di denaro di PostgreSQL viene utilizzato per archiviare i dati di valuta con precisione frazionaria fissa. IL Impostazione IC_Monetary viene utilizzato per determinare la precisione frazionaria. La dimensione del tipo di dati di denaro è di 8 byte e l'intervallo di questo tipo di dati è -922233720368547758.08 a +92233720368547758.07. I tipi di dati interi e galleggianti possono essere utilizzati anche per archiviare i valori di valuta nella tabella del database PostgreSQL. L'output di questo tipo di dati dipende dal valore locale. In questo tutorial sono stati mostrati diversi modi di definire e utilizzare tipi di dati monetari nel database PostgreSQL.

Prerequisiti:

È necessario installare l'ultima versione dei pacchetti PostgreSQL sul sistema operativo Linux prima di eseguire le istruzioni SQL mostrate in questo tutorial. Esegui i seguenti comandi per installare e avviare PostgreSQL:

$ sudo apt-get -y installa postgresql postgresql-confrib
$ sudo systemctl Inizia postgresql.servizio

Esegui il seguente comando per accedere a PostgreSQL con l'autorizzazione alla radice:

$ sudo -u postgres psql

Uso del tipo di dati monetario:

Prima di creare qualsiasi tabella con il tipo di dati booleani è necessario creare un database PostgreSQL. Quindi, esegui il seguente comando per creare un database chiamato 'testdb':

# Crea test Database TestDB;

Verrà visualizzato il seguente output dopo la creazione del database:

Crea una tabella chiamata 'prodotti_1'Nel database corrente con tre campi. Il primo nome di campo è Id che è la chiave principale della tabella. Il valore di questo campo verrà incrementato automaticamente quando un nuovo record si inserisce. Il secondo nome del campo è Nome E il tipo di dati è Varchar (30). Il nome del terzo campo è il prezzo e il tipo di dati è SOLDI.

# Crea table Products_1 (
Chiave primaria seriale ID,
Nome varchar (30),
Prezzo denaro);

Verrà visualizzato il seguente output se la tabella viene creata correttamente:

Esegui le seguenti tre query di inserisci che inseriranno tre diversi valori nel campo del tipo di dati monetario:

# Inserisci in Products_1 (nome, prezzo) Valori ('Bag', 55);
# Inserisci in Products_1 (nome, prezzo) valori ('penna', 2.50);
# Inserisci in Products_1 (nome, prezzo) Valori ("Colore dell'acqua", 15.895634);

Verrà visualizzato il seguente output dopo aver eseguito le query sopra:

Esegui le seguenti query Seleziona per leggere tutti i record del prodotti_1 tavolo:

# Seleziona * da prodotti_1;

Verrà visualizzato il seguente output dopo aver eseguito la query sopra. L'output mostra il simbolo della valuta predefinita nel campo dei dati di denaro.

Utilizzo del tipo di dati numerici:

Il tipo di dati numerici è un altro tipo di dati per archiviare il valore della valuta nella tabella PostgreSQL. Crea una tabella chiamata 'prodotti_2'Nel database corrente con tre campi. Il primo nome di campo è Id che è la chiave principale della tabella. Il valore di questo campo verrà incrementato automaticamente quando un nuovo record si inserisce. Il secondo nome del campo è Nome E il tipo di dati è Varchar (30). Il nome del terzo campo è il prezzo e il tipo di dati è Numerico (5, 3).

# Crea prodotti tabella_2 (
Chiave primaria seriale ID,
Nome varchar (30),
Prezzo numerico (5, 3));

Verrà visualizzato il seguente output se la tabella viene creata correttamente:

Esegui le seguenti query di inserto che inseriranno due record nel prodotti_2 tavolo:

# Inserisci in Products_2 (nome, prezzo) valori ('matita', 2.999);
# Inserisci in Products_2 (nome, prezzo) valori ('Color Pencil', 10.999999);

Verrà visualizzato il seguente output dopo aver eseguito le query sopra:

Il tipo di dati numerici genera un errore se il valore supera il valore di precisione del tipo di dati. La seguente query sugli insert genererà un errore:

# Inserisci in Products_2 (nome, prezzo) valori ("scanner", 1000.999999);

Il seguente output mostra l'errore generato dal campo numerico:

Qualsiasi simbolo di valuta può essere aggiunto prima del valore del campo numerico nella query seleziona. Quindi, è meglio utilizzare il tipo di dati numerici rispetto al tipo di dati monetario per la memorizzazione dei dati di valuta. Esegui la seguente query Seleziona che leggerà tutti i valori di prodotti_2 tabella aggiungendo '$' prima del prezzo campo:

# Seleziona ID, nome, '$' || Prezzo come prezzo da prodotti_2;

Verrà visualizzato il seguente output dopo aver eseguito la query sopra:

Utilizzo del tipo di dati float:

Il tipo di dati float è un'altra opzione per archiviare i dati di valuta. Ma il tipo di dati float non è consigliato a questo scopo perché i valori sono archiviati come approssimazione in questo tipo di dati. L'uso di questo tipo di dati è stato mostrato qui per la memorizzazione del valore valutario.

Crea una tabella denominata 'Products_3' Nel database corrente con tre campi. Il primo nome di campo è Id che è la chiave principale della tabella. Il valore di questo campo verrà incrementato automaticamente quando un nuovo record si inserisce. Il secondo nome del campo è Nome E il tipo di dati è Varchar (30). Il terzo nome di campo è Prezzo E il tipo di dati è GALLEGGIANTE.

# Crea prodotti tabella_3 (
Chiave primaria seriale ID,
Nome varchar (30),
Float di prezzo);

Verrà visualizzato il seguente output se la tabella viene creata correttamente:

Esegui le seguenti query di inserimento che inseriranno due valori nel campo del tipo di dati float:

# INSERT IN Products_3 (nome, prezzo) valori ("stampante HP", 150.99);
# Insert in Products_3 (Nome, Price) Valori ('Samsung Stampter', 180.4578);
# INSERT IN Products_3 (Nome, Price) Valori ('Dell Stampter', 320.56);

Verrà visualizzato il seguente output dopo aver eseguito le query sopra.

Esegui le seguenti query Seleziona per leggere tutti i record del prodotti_3 tavolo:

# Seleziona ID, nome, '$' || Prezzo come prezzo dai prodotti_3;

Verrà visualizzato il seguente output dopo aver eseguito la query sopra:

Conclusione:

Gli usi di diversi tipi di dati per archiviare i dati di valuta nella tabella PostgreSQL sono stati mostrati in questo tutorial utilizzando più tabelle. I tipi di dati di denaro, numerici e galleggianti sono stati utilizzati per archiviare i dati in valuta e i vantaggi e gli svantaggi di ciascun tipo di dati sono stati spiegati qui.