Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad

Base de datos DE LA CONFIGURACION DE UAN BASE, Apuntes de Programación de Bases de Datos

Base de dato en sql, para la evaluacion final de unidades

Tipo: Apuntes

2023/2024

Subido el 13/07/2024

lorena-martinez-fge
lorena-martinez-fge 🇲🇽

4 documentos

1 / 5

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Este código SQL crea un disparador (trigger) en la tabla Ventas que se ejecuta después de una
operación de actualización (UPDATE). Aquí se describe cada línea y comando del código:
CREATE TRIGGER tr_update_sv
ON Ventas
FOR UPDATE
AS
BEGIN
CREATE TRIGGER tr_update_sv: Crea un nuevo disparador llamado tr_update_sv.
ON Ventas: Especifica que el disparador se aplicará a la tabla Ventas.
FOR UPDATE: Indica que el disparador se ejecutará después de una operación de actualización
(UPDATE) en la tabla Ventas.
AS: Comienza la definición del cuerpo del disparador.
BEGIN: Marca el inicio del bloque de código que se ejecutará cuando se dispare el disparador.
-- Variables para almacenar los valores actualizados
DECLARE @IdVenta0 int;
DECLARE @Fecha0 datetime;
DECLARE @Folio0 nvarchar(50);
DECLARE @IdEmpleado0 int;
DECLARE @IdCliente0 int;
DECLARE @Factura0 bit;
DECLARE @IdTienda0 int;
DECLARE @IdVenta0 int;: Declara una variable llamada @IdVenta0 de tipo entero para
almacenar el IdVenta actualizado.
DECLARE @Fecha0 datetime;: Declara una variable llamada @Fecha0 de tipo fecha y hora
para almacenar el valor Fecha actualizado.
DECLARE @Folio0 nvarchar(50);: Declara una variable llamada @Folio0 de tipo cadena de
caracteres de longitud variable (hasta 50 caracteres) para almacenar el valor Folio actualizado.
DECLARE @IdEmpleado0 int;: Declara una variable llamada @IdEmpleado0 de tipo entero
para almacenar el valor IdEmpleado actualizado.
DECLARE @IdCliente0 int;: Declara una variable llamada @IdCliente0 de tipo entero para
almacenar el valor IdCliente actualizado.
DECLARE @Factura0 bit;: Declara una variable llamada @Factura0 de tipo bit para almacenar
el valor Factura actualizado.
DECLARE @IdTienda0 int;: Declara una variable llamada @IdTienda0 de tipo entero para
almacenar el valor IdTienda actualizado.
-- Obtener los valores actualizados de la tabla 'inserted'
pf3
pf4
pf5

Vista previa parcial del texto

¡Descarga Base de datos DE LA CONFIGURACION DE UAN BASE y más Apuntes en PDF de Programación de Bases de Datos solo en Docsity!

Este código SQL crea un disparador (trigger) en la tabla Ventas que se ejecuta después de una operación de actualización (UPDATE). Aquí se describe cada línea y comando del código: CREATE TRIGGER tr_update_sv ON Ventas FOR UPDATE AS BEGIN CREATE TRIGGER tr_update_sv: Crea un nuevo disparador llamado tr_update_sv. ON Ventas: Especifica que el disparador se aplicará a la tabla Ventas. FOR UPDATE: Indica que el disparador se ejecutará después de una operación de actualización (UPDATE) en la tabla Ventas. AS: Comienza la definición del cuerpo del disparador. BEGIN: Marca el inicio del bloque de código que se ejecutará cuando se dispare el disparador. -- Variables para almacenar los valores actualizados DECLARE @IdVenta0 int; DECLARE @Fecha0 datetime; DECLARE @Folio0 nvarchar(50); DECLARE @IdEmpleado0 int; DECLARE @IdCliente0 int; DECLARE @Factura0 bit; DECLARE @IdTienda0 int; DECLARE @IdVenta0 int;: Declara una variable llamada @IdVenta0 de tipo entero para almacenar el IdVenta actualizado. DECLARE @Fecha0 datetime;: Declara una variable llamada @Fecha0 de tipo fecha y hora para almacenar el valor Fecha actualizado. DECLARE @Folio0 nvarchar(50);: Declara una variable llamada @Folio0 de tipo cadena de caracteres de longitud variable (hasta 50 caracteres) para almacenar el valor Folio actualizado. DECLARE @IdEmpleado0 int;: Declara una variable llamada @IdEmpleado0 de tipo entero para almacenar el valor IdEmpleado actualizado. DECLARE @IdCliente0 int;: Declara una variable llamada @IdCliente0 de tipo entero para almacenar el valor IdCliente actualizado. DECLARE @Factura0 bit;: Declara una variable llamada @Factura0 de tipo bit para almacenar el valor Factura actualizado. DECLARE @IdTienda0 int;: Declara una variable llamada @IdTienda0 de tipo entero para almacenar el valor IdTienda actualizado. -- Obtener los valores actualizados de la tabla 'inserted'

SELECT

@IdVenta0 = IdVenta, @Fecha0 = Fecha, @Folio0 = Folio, @IdEmpleado0 = IdEmpleado, @IdCliente0 = IdCliente, @Factura0 = Factura, @IdTienda0 = IdTienda FROM inserted; SELECT ... FROM inserted;: Obtiene los valores actualizados de la tabla inserted (una tabla especial que contiene los registros afectados por la operación UPDATE) y los asigna a las variables previamente declaradas. -- Actualizar la tabla en el servidor remoto UPDATE [25.51.217.138].unidad4.dbo.Ventas SET Fecha = @Fecha0, Folio = @Folio0, IdEmpleado = @IdEmpleado0, IdCliente = @IdCliente0, Factura = @Factura0, IdTienda = @IdTienda WHERE IdVenta = @IdVenta0; END; UPDATE [25.51.217.138].unidad4.dbo.Ventas : Actualiza la tabla Ventas en el servidor remoto con la dirección IP 25.51.217.138, base de datos unidad4 y esquema dbo. SET ...: Asigna los valores de las variables a las correspondientes columnas de la tabla Ventas en el servidor remoto. WHERE IdVenta = @IdVenta0 ;: Especifica que la actualización solo se debe aplicar al registro cuyo IdVenta coincide con el valor de @IdVenta0. END: Marca el final del bloque de código del disparador.

ESCRIPCIÓN DEL QUERY Y SUS COMANDOS

  1. CREATE TRIGGER tr_insert_sv ON Ventas FOR INSERT CREATE TRIGGER tr_insert_sv : Esta línea crea un trigger (disparador) llamado tr_insert_sv. ON Ventas : Especifica que el trigger está asociado a la tabla Ventas. FOR INSERT : Indica que el trigger se ejecutará después de una operación de inserción (INSERT) en la tabla Ventas.
  2. AS AS: Comienza el cuerpo del trigger, definiendo lo que se hará cuando el trigger se dispare.
  3. BEGIN BEGIN: Marca el inicio del bloque de instrucciones que se ejecutarán cuando el trigger se active.
  4. Declaración de Variables DECLARE @IdVenta0 int;: Declara una variable local llamada @IdVenta0 de tipo entero (int). DECLARE @Fecha0 datetime;: Declara una variable local llamada @Fecha0 de tipo fecha y hora (datetime). DECLARE @Folio0 nvarchar(50);: Declara una variable local llamada @Folio0 de tipo cadena de caracteres (nvarchar) con un máximo de 50 caracteres. DECLARE @IdEmpleado0 int;: Declara una variable local llamada @IdEmpleado0 de tipo entero (int). DECLARE @IdCliente0 int;: Declara una variable local llamada @IdCliente0 de tipo entero (int). DECLARE @Factura0 bit;: Declara una variable local llamada @Factura0 de tipo bit (booleano, puede ser 0 o 1). DECLARE @IdTienda0 int;: Declara una variable local llamada @IdTienda0 de tipo entero (int).
  5. Asignación de Valores desde la Tabla inserted SELECT: Utiliza una sentencia SELECT para asignar valores a las variables declaradas. @IdVenta0 = IdVenta @Fecha0 = Fecha @Folio0 = Folio @IdEmpleado0 = IdEmpleado @IdCliente0 = IdCliente

@Factura0 = Factura @IdTienda0 = IdTienda FROM inserted;: La tabla inserted es una tabla virtual que contiene las filas que se acaban de insertar en la tabla Ventas. Esta línea asigna los valores de la fila recién insertada a las variables declaradas.

  1. INSERT INTO con Valores de las Variables INSERT INTO [25.51.217.138].unidad4.dbo.Ventas(IdVenta, Fecha, Folio, IdEmpleado, IdCliente, Factura, IdTienda): Especifica que se va a insertar una nueva fila en la tabla Ventas ubicada en el servidor con la dirección IP 25.51.217.138, dentro de la base de datos unidad4 y el esquema dbo. VALUES (@IdVenta0, @Fecha0, @Folio0, @IdEmpleado0, @IdCliente0, @Factura0, @IdTienda0);: Inserta una nueva fila en la tabla de destino utilizando los valores almacenados en las variables locales.

  2. END END: Marca el final del bloque de instrucciones del trigger. Este trigger se activa después de que una fila es insertada en la tabla Ventas. Captura los valores de los campos de la fila recién insertada y los utiliza para insertar una fila idéntica en una tabla Ventas ubicada en una base de datos en otro servidor (especificado por la dirección IP). Este mecanismo puede ser útil en escenarios de replicación de datos o sincronización entre diferentes bases de datos.  La cláusula WHERE se utiliza en sentencias SQL para filtrar registros y seleccionar solo aquellos que cumplen una condición específica.  La sentencia UPDATE se utiliza para modificar los registros existentes en una tabla.  DELETE se utiliza para eliminar registros existentes de una tabla.  INSERT INTO se utiliza para agregar nuevos registros a una tabla.  La cláusula SET se utiliza en la sentencia UPDATE para especificar las columnas y los valores que se van a actualizar.  En SQL, @ se utiliza para declarar y utilizar variables locales. @id sería una variable llamada id.  La sentencia DECLARE se utiliza para declarar variables locales en SQL.  La sentencia BEGIN se utiliza para iniciar un bloque de instrucciones. Generalmente se utiliza en triggers, transacciones y bloques de código.  En SQL, el símbolo @ se utiliza para identificar variables locales. Las variables locales se declaran y utilizan dentro de un bloque de código, como en procedimientos almacenados, triggers o scripts ad-hoc. El uso del @ ayuda a diferenciar estas variables de las columnas de las tablas y otros objetos de la base de datos.