El tipo de datos monetarios se utiliza para almacenar datos de divisas en la tabla de base de datos PostgreSQL. El Tipo de datos de dinero de PostgreSQL se utiliza para almacenar datos de divisas con precisión fraccional fija. El Configuración IC_MONETARY se usa para determinar la precisión fraccional. El tamaño del tipo de datos de dinero es de 8 bytes y el rango de este tipo de datos es -92233720368547758.08 a +92233720368547758.07. Los tipos de datos enteros y flotantes se pueden usar también para almacenar valores de divisas en la tabla de la base de datos PostgreSQL. La salida de este tipo de datos depende del valor local. Se han mostrado diferentes formas de definir y usar tipos de datos monetarios en la base de datos PostgreSQL en este tutorial.
Requisitos previos:
Debe instalar la última versión de los paquetes PostgreSQL en el sistema operativo Linux antes de ejecutar las declaraciones SQL que se muestran en este tutorial. Ejecute los siguientes comandos para instalar e iniciar el PostgreSQL:
$ sudo apt-get -y instalación postgresql postgresql-contrib
$ sudo systemctl iniciar postgresql.servicio
Ejecute el siguiente comando para iniciar sesión en PostgreSQL con permiso raíz:
$ sudo -u postgres psqlUso del tipo de datos de dinero:
Antes de crear cualquier tabla con el tipo de datos booleanos, debe crear una base de datos PostgreSQL. Entonces, ejecute el siguiente comando para crear una base de datos llamada 'testdb':
# Crear base de datos TestDB;La siguiente salida aparecerá después de crear la base de datos:
Crear una tabla llamada 'Productos_1'En la base de datos actual con tres campos. El primer nombre de campo es Identificación cuál es la clave principal de la tabla. El valor de este campo se incrementará automáticamente cuando un nuevo registro se insertará. El segundo nombre de campo es Nombre y el tipo de datos es Varchar (30). El tercer nombre de campo es el precio y el tipo de datos es DINERO.
# Crea Table Products_1 (La siguiente salida aparecerá si la tabla se crea correctamente:
Ejecute las siguientes tres consultas de inserción que insertarán tres valores diferentes en el tipo de datos del campo de dinero:
# Inserte en productos_1 (nombre, precio) valores ('Bag', 55);La siguiente salida aparecerá después de ejecutar las consultas anteriores:
Ejecute la siguiente consulta de selección para leer todos los registros del Productos_1 mesa:
# Seleccionar * de Products_1;La siguiente salida aparecerá después de ejecutar la consulta anterior. La salida muestra el símbolo de moneda predeterminado en el campo del tipo de datos de dinero.
Uso del tipo de datos numéricos:
El tipo de datos numéricos es otro tipo de datos para almacenar el valor de la moneda en la tabla PostgreSQL. Crear una tabla llamada 'Productos_2'En la base de datos actual con tres campos. El primer nombre de campo es Identificación cuál es la clave principal de la tabla. El valor de este campo se incrementará automáticamente cuando un nuevo registro se insertará. El segundo nombre de campo es Nombre y el tipo de datos es Varchar (30). El tercer nombre de campo es el precio y el tipo de datos es Numérico (5, 3).
# Crea Table Products_2 (La siguiente salida aparecerá si la tabla se crea correctamente:
Ejecute las siguientes consultas de inserción que insertarán dos registros en el Productos_2 mesa:
# Inserte en productos_2 (nombre, precio) valores ('lápiz', 2.999);La siguiente salida aparecerá después de ejecutar las consultas anteriores:
El tipo de datos numéricos genera un error si el valor excede el valor de precisión del tipo de datos. La siguiente consulta de inserción generará un error:
# Insertar en Products_2 (nombre, precio) Valores ('Scanner', 1000.999999);La siguiente salida muestra el error generado por el campo numérico:
Se puede agregar cualquier símbolo de moneda antes del valor del campo numérico en la consulta de selección. Por lo tanto, es mejor usar el tipo de datos numéricos que el tipo de datos de dinero para almacenar datos de divisas. Ejecute la siguiente consulta de selección que leerá todos los valores del Productos_2 tabla agregando '$' antes del precio campo:
# Seleccione ID, nombre, '$' || Precio como precio de productos_2;La siguiente salida aparecerá después de ejecutar la consulta anterior:
Uso del tipo de datos de flotación:
El tipo de datos de flotación es otra opción para almacenar datos de divisas. Pero el tipo de datos de flotación no se recomienda para este propósito porque los valores se almacenan como una aproximación en este tipo de datos. Aquí se ha mostrado el uso de este tipo de datos para almacenar el valor moneda.
Crea una tabla llamada 'Productos_3' en la base de datos actual con tres campos. El primer nombre de campo es Identificación cuál es la clave principal de la tabla. El valor de este campo se incrementará automáticamente cuando un nuevo registro se insertará. El segundo nombre de campo es Nombre y el tipo de datos es Varchar (30). El tercer nombre de campo es Precio y el tipo de datos es FLOTAR.
# Crea Table Products_3 (La siguiente salida aparecerá si la tabla se crea correctamente:
Ejecute las siguientes consultas de inserción que insertarán dos valores en el campo del tipo de datos de flotación:
# Insertar en Product_3 (nombre, precio) Valores ('impresora HP', 150.99);La siguiente salida aparecerá después de ejecutar las consultas anteriores.
Ejecute la siguiente consulta de selección para leer todos los registros del Productos_3 mesa:
# Seleccione ID, nombre, '$' || Precio como precio de productos_3;La siguiente salida aparecerá después de ejecutar la consulta anterior:
Conclusión:
Los usos de diferentes tipos de datos para almacenar datos de divisas en la tabla PostgreSQL se han mostrado en este tutorial utilizando múltiples tablas. Los tipos de datos de dinero, numéricos y flotantes se han utilizado para almacenar los datos de divisas y las ventajas y desventajas de cada tipo de datos se han explicado aquí.