--SE CITA LA BASE DE DATO
GO
USE GestionCarteraInversiones
GO
--1. Añadir un atributo a una tabla
-- Se añade el atributo "CORREO_CLIENTE" a la tabla "CLIENTES"
ALTER TABLE CLIENTES
ADD CORREO_CLIENTE VARCHAR(100); -- Se define el tipo de dato como VARCHAR(100)
GO
--2. Modificar un atributo de una tabla
GO
-- Se modifica el atributo "DOMICILIO" de la tabla "CLIENTES"
ALTER TABLE CLIENTES
ALTER COLUMN DOMICILIO VARCHAR(250); -- Se cambia el tipo de dato a VARCHAR(250)
GO
--3. Eliminar un atributo de una tabla
-- Se elimina el atributo "CORREO_CLIENTE" de la tabla "CLIENTES"
ALTER TABLE CLIENTES
DROP COLUMN CORREO_CLIENTE;
GO
--4. Actualizar registros de tablas diferentes
GO
-- Se actualiza el "DOMICILIO" del cliente con NIF '12345678A' en la tabla
"CLIENTES"
UPDATE CLIENTES
SET DOMICILIO = 'Nueva Calle, 123'
WHERE NIF_CLIENTE = '12345678A';
GO
-- Se actualiza el "PRECIO" de la acción con código 'AAPL' en la tabla "ACCIONES"
UPDATE ACCIONES
SET CAPITAL_SOCIAL = 12000000000 -- Se actualiza el capital social
WHERE COD_ACCIONES = 'AAPL';
GO
--5. Borrar registros de tablas diferentes
GO
-- Se eliminan las operaciones del cliente con NIF '98765432B' en la tabla
"OPERACIONES"
DELETE FROM OPERACIONES
WHERE NIF_CLIENTE = '98765432B';
GO
-- Se eliminan las cotizaciones de la acción con código 'MSFT' en la tabla
"COTIZACIONES"
DELETE FROM COTIZACIONES
WHERE COD_ACCIONES = 'MSFT';
GO
/*
Explicación detallada:
Añadir atributo: La sentencia ALTER TABLE ... ADD se utiliza para añadir una nueva
columna a una tabla existente. Se especifica el nombre de la columna y su tipo de
dato.
Modificar atributo: La sentencia ALTER TABLE ... ALTER COLUMN se utiliza para
modificar la definición de una columna existente. Se puede cambiar su tipo de dato,
tamaño, etc.
Eliminar atributo: La sentencia ALTER TABLE ... DROP COLUMN se utiliza para
eliminar una columna de una tabla.
Actualizar registros: La sentencia UPDATE se utiliza para modificar los valores de
uno o varios registros en una tabla.
Se especifica la tabla, las columnas que se van a actualizar y la condición que
deben cumplir los registros.
Borrar registros: La sentencia DELETE FROM se utiliza para eliminar uno o varios
registros de una tabla. Se especifica la tabla y la condición que deben cumplir los
registros que se van a eliminar.
Recomendaciones adicionales:
Transacciones: Para asegurar la integridad de los datos, es recomendable utilizar
transacciones al realizar operaciones de modificación o eliminación. Esto permite
deshacer los cambios si ocurre algún error.
Cláusula WHERE: Al utilizar sentencias UPDATE o DELETE, es fundamental utilizar la
cláusula WHERE para especificar qué registros se van a modificar o eliminar. Si se
omite la cláusula WHERE,
se modificarán o eliminarán todos los registros de la tabla.
*/
GO
-- Declarar variables
DECLARE @TableName VARCHAR(255)
DECLARE TableCursor CURSOR FOR
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
-- Abrir el cursor
OPEN TableCursor
-- Leer la primera tabla
FETCH NEXT FROM TableCursor INTO @TableName
-- Recorrer todas las tablas
WHILE @@FETCH_STATUS = 0
BEGIN
-- Imprimir el nombre de la tabla
PRINT 'Tabla: ' + @TableName
-- Ejecutar una consulta SELECT * para mostrar todos los datos de la tabla
DECLARE @SQLQuery NVARCHAR(MAX)
SET @SQLQuery = 'SELECT * FROM ' + QUOTENAME(@TableName) -- Usar QUOTENAME
para nombres de tabla con espacios u otros caracteres especiales
EXEC sp_executesql @SQLQuery
-- Leer la siguiente tabla
FETCH NEXT FROM TableCursor INTO @TableName
END
-- Cerrar y liberar el cursor
CLOSE TableCursor
DEALLOCATE TableCursor
GO