Insertar fila si los valores aún no existen en postgresl

Insertar fila si los valores aún no existen en postgresl

Conocer y manipular los sistemas de gestión de bases de datos nos ha familiarizado con las modificaciones sobre bases de datos. Que generalmente implica crear, insertar, actualizar y eliminar funciones aplicadas en tablas específicas. En el artículo actual, veremos cómo los datos administran el método de inserción. Debemos tener que crear una tabla en la que queremos inserción. La declaración de inserción se utiliza para la adición de nuevos datos en filas de tablas. La declaración de insertos de PostgreSQL cubre algunas reglas para la ejecución exitosa de una consulta. En primer lugar, tenemos que mencionar el nombre de la tabla seguido de nombres de columnas (atributos) donde queremos insertar filas. En segundo lugar, debemos ingresar los valores, separados por una coma después de la cláusula de valor. Finalmente, cada valor debe estar en el mismo orden que la secuencia de listas de atributos se proporciona al crear una tabla particular.

Sintaxis

>> insertar en valores de Tablename (columna1, columna) ('value1', 'value2');

Aquí, una columna son los atributos de la tabla. El valor de la palabra clave se usa para ingresar valores. 'Value' son los datos de las tablas a ingresar.

Insertar funciones de fila en PostgreSQL Shell (PSQL)

Después de la instalación exitosa de PostgreSQL, ingresaremos el nombre de la base de datos, el número de puerto y la contraseña. PSQL se iniciará. Luego realizaremos consultas respectivamente.

Ejemplo 1: Uso de Insertar para agregar nuevos registros a las tablas
Después de la sintaxis, crearemos la siguiente consulta. Para insertar una fila en la tabla, crearemos una tabla llamada "Cliente". La tabla respectiva contiene 3 columnas. El tipo de datos de columnas particulares debe mencionarse para ingresar datos en esa columna y evitar redundancia. La consulta para crear una mesa es:

>> Crear Tabla Customer (ID int, nombre Varchar (40), país Varchar (40));

Después de crear la tabla, ahora ingresaremos datos insertando filas manualmente en consultas separadas. En primer lugar, mencionamos el nombre de la columna para mantener la precisión de los datos en columnas particulares con respecto a los atributos. Y luego, los valores se ingresarán. Los valores están codificados por comas individuales, ya que deben insertarse sin ninguna alteración.

>> Insertar en valores del cliente (ID, nombre, país) ('1', 'Alia', 'Pakistán');

Después de cada inserción exitosa, la salida será "0 1", lo que significa que 1 fila se inserta a la vez. En la consulta como se mencionó anteriormente, hemos insertado datos 4 veces. Para ver los resultados, utilizaremos la siguiente consulta:

>> seleccionar * del cliente;

Ejemplo 2: Uso de la instrucción Insertar al agregar varias filas en una sola consulta
El mismo enfoque se utiliza para insertar datos pero no introducir declaraciones de inserción muchas veces. Ingresaremos de inmediato utilizando una determinada consulta; Todos los valores de una fila están separados por "mediante el uso de la siguiente consulta, alcanzaremos la salida requerida

Ejemplo 3: inserte varias filas en una tabla basada en números en otra tabla
Este ejemplo se relaciona con la inserción de datos de una tabla a otra. Considere dos tablas, "A" y "B". La tabla "a" tiene 2 atributos, yo.mi., nombre y clase. Al aplicar una consulta de creación, presentaremos una tabla. Después de la creación de la tabla, los datos se ingresarán utilizando una consulta de insertos.

>> Crear tabla A (nombre Varchar (30), clase Varchar (40));
>> inserte en un valores ('amna', 1), ('bisma', '2'), ('javed', '3'), ('maha', '4');

Se insertan cuatro valores en la tabla utilizando la teoría superior. Podemos verificar utilizando declaraciones seleccionadas.

Del mismo modo, crearemos la Tabla "B", con atributos de todos los nombres y sujetos. Las mismas 2 consultas se aplicarán para insertar y obtener el registro de la tabla correspondiente.

>> Crear Tabla B (AllNames Varchar (30), Sujeto Varchar (70));

Obtenga el registro de la teoría seleccionada.

>> seleccionar * de B;

Para insertar valores de la tabla b En la tabla, usaremos la siguiente consulta. Esta consulta funcionará de tal manera que todos los nombres en la tabla b se insertará en la tabla a con el recuento de números que muestran el número de ocurrencias de un número particular en la columna respectiva de la tabla b. "b.AllNames ”representa la función de objeto para especificar la tabla. Contar (b.Allnames) La función funciona para contar la ocurrencia total. Como se produce cada nombre a la vez, la columna resultante tendrá 1 número.

>> insertar en un (nombre, clase) Seleccione B.All Names, Count (B.Allnames) de B Grupo por B.Allecios;

Ejemplo 4: inserte datos en filas si no existe
Esta consulta se usa para ingresar a filas si no está presente. En primer lugar, las verificaciones de consultas proporcionadas si la fila ya está presente o no. Si ya existe, entonces los datos no se agregan. Y si los datos no están presentes en una fila, la nueva inserción se mantendrá. Aquí TMP es una variable temporal utilizada para almacenar datos durante algún tiempo.

>> Insertar en B (AllNames, Asunto) Seleccione * de (Seleccione 'Kinza' como Allnames, 'Islamiat' como sujeto) como TMP donde no existe (seleccione AllNAMES de B Where Allnames = 'Sundus' Límite 1);

Ejemplo 5: PostgreSQL Upsert usando la instrucción Insertar
Esta función tiene dos variedades:

  • Actualización: si se produce un conflicto, Si el registro coincide con los datos existentes en la tabla, se actualiza con nuevos datos.
  • Si ocurre un conflicto, no hagas nada: Si un registro coincide con los datos existentes en la tabla, omite el registro, o si se debe un error, también se ignora.

Inicialmente, formaremos una tabla con algunos datos de muestra.

>> Crear tabla TBL2 (ID int Prime Key, Nombre de carácter variable);

Después de crear la tabla, insertaremos datos en TBL2 utilizando la consulta:

>> Insertar en valores TBL2 (1, 'Uzma'), (2, 'Abdul'), (3, 'Hamna'), (4, 'Fátima'), (5, 'Shiza'), (6, ' Javeria ');

Si se produce un conflicto, actualice:

>> Insertar en valores TBL2 (8, 'Rida') en conflicto (id) do actualizar set nombre = excluido.Nombre;

Al principio, ingresaremos datos utilizando la consulta de conflicto de ID 8 y el nombre Rida. La misma consulta se utilizará siguiendo la misma ID; El nombre será cambiado. Ahora notará cómo se cambiarán los nombres en la misma identificación en la tabla.

>> Insertar en valores TBL2 (8, 'Mahi') en conflicto (id) do actualizar set nombre = excluido.Nombre;

Hemos descubierto que había un conflicto en la identificación "8", por lo que se actualiza la fila especificada.

Si ocurre un conflicto, no hagas nada

>> Insertar en valores TBL2 (9, 'Hira') en conflicto (id) no hacer nada;

Usando esta consulta, se inserta una nueva fila. Después de eso, usaremos si la misma consulta para ver el conflicto que ocurrió.

>> Insertar en valores TBL2 (9, 'Hira') en conflicto (id) no hacer nada;

Según la imagen anterior, verá que después de la ejecución de la consulta "Insertar 0 0" muestra que no se ingresan datos.

Conclusión

Hemos vislumbrado el concepto de comprensión de insertar filas en tablas donde los datos no están presentes o no se completa la inserción, si se encuentra ningún registro, para reducir la redundancia en las relaciones de la base de datos.