SlideShare una empresa de Scribd logo
1 de 8
UNIVERSIDAD NACIONAL DE CAJAMARCA
Facultad de Ingeniería
Escuela Académico Profesional de Ing. Sistemas
Curso:
Base de datos II
Tema:
UPDATE, INSERT, DELETE
Docente:
Aparicio Arteaga, Carlos Enrique
Alumnos:
Celis Perez, Carlos Alberto
Grupo:
B1
Ciclo:
2020 I
"Año del Bicentenario del Perú: 200 años de Independencia"
Cajamarca, abril 2021
Ejercicios de UPDATE, INSERT, DELETE:
1. Actualizar el precio delos productosaplicando un descuento del20% a todos
los productos que tengan un stock superior a 30 unidades.
UPDATE Products
set UnitPrice = UnitPrice*0.8
where UnitsInStock > 30
2. Todos los productos que están en la condición de DESCONTINUADOS
pasarlos a la condición de VIGENTES.
UPDATE Products
set Discontinued = 0
Where Discontinued = 1
3. Mover todos los productos pertenecientes a la categoría con código 1, a la
categoría 5. Luego eliminar la categoría 1 de la tabla Categorías.
UPDATE Products
set CategoryID = 5
Where CategoryID = 1
4. Se desea actualizar los productos con stock igual a 0 a un stock de 100
unidades, debido a que llego un embarque con productos.
UPDATE Products
set UnitsInStock = 100
Where UnitsInStock = 0
5. Actualizar el campo UnitPrice” de la tabla “Products”porel valoralmacenado
en el campo UnitPrice de la Tabla “Order Details”
UPDATE P
SET P.UnitPrice = D.UnitPrice
FROM PRODUCTS AS P
INNER JOIN [ORDER DETAILS] AS D
ON P.ProductId = D.ProductId
6. Cambiar el valor del campo COUNTRY a “Perú” y el campo CITY “Cajamarca”
de la Tabla “Suppliers”, a todos los proveedores del país de USA.
UPDATE Suppliers
Set Country='Perú', City='Cajamarca'
Where Country Like'USA'
7. Colocar la fecha de hoy día a todas las órdenes realizadas en el año 1998.
(Revisar la función GetDate())
UPDATE Orders
set OrderDate = getdate ()
Where year (OrderDate) = 1998
8. Insertar un nuevo cliente (customers). Conteste las siguientes preguntas
Select *
From Customers
insert into Customers (CustomerID, CompanyName, ContactName,
Address,
city, Country, contactTitle, PostalCode, Phone)
values ('CACP','ConsorcioX', 'Jose', 'Nv.Cajamarca', 'Cajamarca',
'Perú', 'Celis', '143B', 95202592)
a. Elimine el cliente ingresado por su código (CustomerId). ¿Se pudo
eliminar? ¿Por qué?
DELETE
From Customers
Where CustomerID= 'CACP'
Si se pudo eliminar porque era un elemento recién insertado y no
tenía relación con ninguna tabla.
b. Elimine el cliente con código (CustomerId) igual a “ALFKI”. ¿Se pudo
eliminar? ¿Por qué?
DELETE
From Customers
Where CustomerID= 'ALFKI'
No se pudo eliminar puesto que era un elemento ya almacenado en
una tabla.
Ejercicios Stored Procedure
9. Crear un SP que muestre las ordenes realizadas por un empleado, ingresar
como parámetro el código del empleado y el año.
Create proc order_Empleado
@codigo int
as
begin
Select e.EmployeeID, LastName, FirstName, OrderDate
From Orders as o
inner Join Employees as e
on o.EmployeeID = e.EmployeeID
where e.EmployeeID = @codigo
end
exec order_Empleado 5
10. Crear un SP que nos permita ACTUALIZAR EN CASCADA el código de un
Cliente (Customers). Se debe actualizar el nuevo código en las Tablas
Customers y Orders.
UPDATE Customers
Set CustomerID='CACP'
Where CustomerID='ANTON'
Select *
From Orders
Where CustomerID='CACP'
11. Crear un SP que nos permita eliminar los detalles de pedidos (Order Details),
ingresando como parámetro el código de producto (ProductId)
Create proc Eliminar_pedidos
@ID int
As
Delete
From [Order Details]
Where ProductID=@ID
12. Crear un SP que permita ingresar un nuevo registro a la tabla “Alumnos1”
Tabla: Alumnos1
CodAlum ---> PK, INT Ident.
NomAlum ---> VARCHAR(30)
ApeAlum ---> VARCHAR(40)
FecNacAlum ---> DATETIME
SexAlum ---> CHAR(1)
create Procedure Alumno1
(@CodAlum int,
@NomAlumn varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum char(1))
As
insert into Alumno1(@CodAlum,@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum)
/*ENTERO NO IDENTITY*/
Create proc Alumno1
(@CodAlum int,
@NomAlumn varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum char(1))
As
insert into Alumno1 values(@CodAlum,@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum)
/*ENTERO IDENTITY*/
Create proc Alumno1
(@CodAlum int,
@NomAlumn varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum char(1))
As
insert into Alumno1(NomAlumn,ApeAlum,FecNacAlum,SexAlum)
values(@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum)
13. Crear la Tabla “Alumnos2”.
Tabla: Alumnos2
CodAlum ---> PK, CHAR(5)
NomAlum ---> VARCHAR(30)
ApeAlum ---> VARCHAR(40)
FecNacAlum ---> DATETIME
SexAlum ---> CHAR(1)
Crear un SP que nos permita insertar un registro. El código de alumno se debe
generar de la siguiente manera: Primer carácter del nombre + Primer carácter del
apellido + número correlativo en función del número total de registros empezando
de 001.
create proc SP_Alumno2
(@N varchar(30),
@A varchar(40),
@F datetime,
@S char(1))
As
Declare @C char(5)
Declare @NR int
Select @NR =COUNT(*)
From Alumno2
If(@NR<9)
Set @C= LEFT(@N,1)+LEFT(@A,1)+'00'+LTRIM(Str(@NR+1))
Else if(@NR<99)
Set @C= LEFT(@N,1)+LEFT(@A,1)+'0'+LTRIM(Str(@NR+1))
Else
Set @C= LEFT(@N,1)+LEFT(@A,1)+'0'+LTRIM(Str(@NR+1))
Insert into Alumno2
Values (@C,@N, @A,@f,@S)
Select *
From Alumno2
SP_Alumno2 'Carlos','Celis','06/09/2021','M'
14. Crear la Tabla “Alumnos3”.
Tabla: Alumnos3
CodAlum ---> PK, CHAR(7)
NomAlum ---> VARCHAR(30)
ApeAlum ---> VARCHAR(40)
FecNacAlum ---> DATETIME
SexAlum ---> CHAR(1)
Crear un SP que nos permita insertar un registro. El código de alumno se debe
generar de la siguiente manera: El año de nacimiento + número correlativo en
función del número total de registros empezando en 001.
Create Table Alumno3
(CodAlum CHAR(7) PRIMARY KEY,
NomAlum varchar(30),
ApeAlum varchar(40),
FecNacAlum Datetime,
SexAlum Char(1))
Go
create proc Sp_Insertar
@NomAlum varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum Char(1)
As
Begin
Declare @Codigo char(7)
Declare @NR int
Select @NR =COUNT(*)
From Alumno3
if(@NR<9)
Set @Codigo= LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1)
Else if(@NR<99)
Set @Codigo= LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1)
else
Set @Codigo= LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1)
END
Select*
From Alumno3
go
Exec Sp_Insertar 'Pedro','Castel','1999/08/01','M'
15. Crear la Tabla “Alumnos4”.
Tabla: Alumnos4
CodAlum ---> PK, CHAR(8)
NomAlum ---> VARCHAR(30)
ApeAlum ---> VARCHAR(40)
FecNacAlum ---> DATETIME
SexAlum ---> CHAR(1)
Crear un SP que nos permita insertar un registro. El código de alumno se debe
generar de la siguiente manera: Sexo + El año de nacimiento + número correlativo
en función del número total de registros empezando en 001.
Create table Alumno4
(CodAlum CHAR(8) PRIMARY KEY,
NomAlum varchar(30),
ApeAlum varchar(40),
FecNacAlum Datetime,
SexAlum Char(1))
Go
create proc Sp_Insertar4
@NomAlum varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum Char(1)
As
Begin
Declare @Codigo char(8)
Declare @NR int
Select @NR =COUNT(*)
From Alumno4
if(@NR<9)
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1)
else if(@NR<99)
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1)
else
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1)
insert into Alumno4
Values(@Codigo,@NomAlum,@ApeAlum,@FecNacAlum,@SexAlum)
end
Select *
From Alumno4
go
Exec Sp_Insertar4 'Pedro','Castel','1999/08/01','M'
16. Crear la Tabla “Alumnos5”.
Tabla: Alumnos5
CodAlum ---> PK, CHAR(8)
NomAlum ---> VARCHAR(30)
ApeAlum ---> VARCHAR(40)
FecNacAlum ---> DATETIME
SexAlum ---> CHAR(1)
Crear un SP que nos permita insertar un registro. El código de alumno se debe
generar de la siguiente manera: Sexo + El año de nacimiento + número correlativo
en función del número total de registros empezando en 001.
Create table Alumno5
(CodAlum CHAR(8) PRIMARY KEY,
NomAlum varchar(30),
ApeAlum varchar(40),
FecNacAlum Datetime,
SexAlum Char(1))
Alter proc Sp_Insertar5
@NomAlum varchar(30),
@ApeAlum varchar(40),
@FecNacAlum datetime,
@SexAlum Char(1)
As
Begin
Declare @Codigo char(8)
Declare @NR int
Select @NR =ISNULL(Max(Right(CodAlum,3)),0)
From Alumno5
if(@NR<9)
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1)
else if(@NR<99)
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1)
else
Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1)
insert into Alumno5
Values(@Codigo,@NomAlum,@ApeAlum,@FecNacAlum,@SexAlum)
end
Select *
From Alumno5
go
Exec Sp_Insertar5 'Pedro','Castel','1999/08/01','M'
Considerar la posibilidad que eliminar registros, es por eso que debemos cambiar
el count(*) por Max aplicado a los tres últimos caracteres del código de alumno:
Max(right(CodAlum)) o isnull(MAX(RIGHT(CodAlum,3)),0)
17. Crear un Stored Procedure que nos permita seleccionar y mostrar un
empleado aleatoriamente.
Alter Proc SP_Empledo_Aleatorio
As
Begin
Declare @A int
set @A= RAND(1)*10
Select *
From Employees
Where EmployeeID=@A
END
exec SP_Empledo_Aleatorio
18. Crear un Stored Procedure que nos permita seleccionar “N” Clientes
aleatoriamente.
create proc Sp_MostrarEmpleado
As
Declare @A Integer
Set @A=FLOOR(RAND()*10)
Select top(@A)*
From Customers
Exec Sp_MostrarEmpleado

Más contenido relacionado

Similar a Celis perez, carlos

Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005pabloesp
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenadosguesta403644
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenadosguesta403644
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos AlmacenadosRafa
 
Documentoaltas
DocumentoaltasDocumentoaltas
DocumentoaltaslupithaRSz
 
Base datos mysql y visual basic
Base datos mysql y visual basicBase datos mysql y visual basic
Base datos mysql y visual basicRafael Tobar Jame
 
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALESProyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALESIsabel Vlz MoOrales
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfTareasEMI
 
Commit&rollback
Commit&rollbackCommit&rollback
Commit&rollbackArchCHUZ
 
Solucion laboratorio lenguaje_transaccional
Solucion laboratorio lenguaje_transaccionalSolucion laboratorio lenguaje_transaccional
Solucion laboratorio lenguaje_transaccionalromero janeth
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datosjubacalo
 
CASO DE ESTUDIO DE EASYDRIVE
CASO DE ESTUDIO DE EASYDRIVECASO DE ESTUDIO DE EASYDRIVE
CASO DE ESTUDIO DE EASYDRIVEEwing Ma
 
Campos calculados julio
Campos calculados julioCampos calculados julio
Campos calculados julioN_Aquarium
 

Similar a Celis perez, carlos (20)

Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005
 
Laboratorio de XML en DB2
Laboratorio de XML en DB2Laboratorio de XML en DB2
Laboratorio de XML en DB2
 
Gbd82
Gbd82Gbd82
Gbd82
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenados
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenados
 
Procedimientos Almacenados
Procedimientos AlmacenadosProcedimientos Almacenados
Procedimientos Almacenados
 
Separata de vb 2015
Separata de vb 2015Separata de vb 2015
Separata de vb 2015
 
Documentoaltas
DocumentoaltasDocumentoaltas
Documentoaltas
 
Base datos mysql y visual basic
Base datos mysql y visual basicBase datos mysql y visual basic
Base datos mysql y visual basic
 
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALESProyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
Proyecto BD parcial 3 ♥ ISSA ♥ VELEZ♥ MORALES
 
U5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdfU5. Arreglos de Objetos.pdf
U5. Arreglos de Objetos.pdf
 
Curso de Macros Excel
Curso de Macros ExcelCurso de Macros Excel
Curso de Macros Excel
 
Relaciones
RelacionesRelaciones
Relaciones
 
Commit&rollback
Commit&rollbackCommit&rollback
Commit&rollback
 
Solucion laboratorio lenguaje_transaccional
Solucion laboratorio lenguaje_transaccionalSolucion laboratorio lenguaje_transaccional
Solucion laboratorio lenguaje_transaccional
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
 
Cursores
CursoresCursores
Cursores
 
CASO DE ESTUDIO DE EASYDRIVE
CASO DE ESTUDIO DE EASYDRIVECASO DE ESTUDIO DE EASYDRIVE
CASO DE ESTUDIO DE EASYDRIVE
 
Campos calculados julio
Campos calculados julioCampos calculados julio
Campos calculados julio
 
Práctica SQL en MYSQL
Práctica SQL en MYSQLPráctica SQL en MYSQL
Práctica SQL en MYSQL
 

Último

texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 

Último (20)

texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 

Celis perez, carlos

  • 1. UNIVERSIDAD NACIONAL DE CAJAMARCA Facultad de Ingeniería Escuela Académico Profesional de Ing. Sistemas Curso: Base de datos II Tema: UPDATE, INSERT, DELETE Docente: Aparicio Arteaga, Carlos Enrique Alumnos: Celis Perez, Carlos Alberto Grupo: B1 Ciclo: 2020 I "Año del Bicentenario del Perú: 200 años de Independencia" Cajamarca, abril 2021
  • 2. Ejercicios de UPDATE, INSERT, DELETE: 1. Actualizar el precio delos productosaplicando un descuento del20% a todos los productos que tengan un stock superior a 30 unidades. UPDATE Products set UnitPrice = UnitPrice*0.8 where UnitsInStock > 30 2. Todos los productos que están en la condición de DESCONTINUADOS pasarlos a la condición de VIGENTES. UPDATE Products set Discontinued = 0 Where Discontinued = 1 3. Mover todos los productos pertenecientes a la categoría con código 1, a la categoría 5. Luego eliminar la categoría 1 de la tabla Categorías. UPDATE Products set CategoryID = 5 Where CategoryID = 1 4. Se desea actualizar los productos con stock igual a 0 a un stock de 100 unidades, debido a que llego un embarque con productos. UPDATE Products set UnitsInStock = 100 Where UnitsInStock = 0 5. Actualizar el campo UnitPrice” de la tabla “Products”porel valoralmacenado en el campo UnitPrice de la Tabla “Order Details” UPDATE P SET P.UnitPrice = D.UnitPrice FROM PRODUCTS AS P INNER JOIN [ORDER DETAILS] AS D ON P.ProductId = D.ProductId 6. Cambiar el valor del campo COUNTRY a “Perú” y el campo CITY “Cajamarca” de la Tabla “Suppliers”, a todos los proveedores del país de USA. UPDATE Suppliers Set Country='Perú', City='Cajamarca' Where Country Like'USA' 7. Colocar la fecha de hoy día a todas las órdenes realizadas en el año 1998. (Revisar la función GetDate()) UPDATE Orders set OrderDate = getdate () Where year (OrderDate) = 1998 8. Insertar un nuevo cliente (customers). Conteste las siguientes preguntas Select * From Customers insert into Customers (CustomerID, CompanyName, ContactName, Address,
  • 3. city, Country, contactTitle, PostalCode, Phone) values ('CACP','ConsorcioX', 'Jose', 'Nv.Cajamarca', 'Cajamarca', 'Perú', 'Celis', '143B', 95202592) a. Elimine el cliente ingresado por su código (CustomerId). ¿Se pudo eliminar? ¿Por qué? DELETE From Customers Where CustomerID= 'CACP' Si se pudo eliminar porque era un elemento recién insertado y no tenía relación con ninguna tabla. b. Elimine el cliente con código (CustomerId) igual a “ALFKI”. ¿Se pudo eliminar? ¿Por qué? DELETE From Customers Where CustomerID= 'ALFKI' No se pudo eliminar puesto que era un elemento ya almacenado en una tabla. Ejercicios Stored Procedure 9. Crear un SP que muestre las ordenes realizadas por un empleado, ingresar como parámetro el código del empleado y el año. Create proc order_Empleado @codigo int as begin Select e.EmployeeID, LastName, FirstName, OrderDate From Orders as o inner Join Employees as e on o.EmployeeID = e.EmployeeID where e.EmployeeID = @codigo end exec order_Empleado 5 10. Crear un SP que nos permita ACTUALIZAR EN CASCADA el código de un Cliente (Customers). Se debe actualizar el nuevo código en las Tablas Customers y Orders. UPDATE Customers Set CustomerID='CACP' Where CustomerID='ANTON' Select * From Orders Where CustomerID='CACP' 11. Crear un SP que nos permita eliminar los detalles de pedidos (Order Details), ingresando como parámetro el código de producto (ProductId) Create proc Eliminar_pedidos @ID int As
  • 4. Delete From [Order Details] Where ProductID=@ID 12. Crear un SP que permita ingresar un nuevo registro a la tabla “Alumnos1” Tabla: Alumnos1 CodAlum ---> PK, INT Ident. NomAlum ---> VARCHAR(30) ApeAlum ---> VARCHAR(40) FecNacAlum ---> DATETIME SexAlum ---> CHAR(1) create Procedure Alumno1 (@CodAlum int, @NomAlumn varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum char(1)) As insert into Alumno1(@CodAlum,@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum) /*ENTERO NO IDENTITY*/ Create proc Alumno1 (@CodAlum int, @NomAlumn varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum char(1)) As insert into Alumno1 values(@CodAlum,@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum) /*ENTERO IDENTITY*/ Create proc Alumno1 (@CodAlum int, @NomAlumn varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum char(1)) As insert into Alumno1(NomAlumn,ApeAlum,FecNacAlum,SexAlum) values(@NomAlumn,@ApeAlum,@FecNacAlum,@SexAlum) 13. Crear la Tabla “Alumnos2”. Tabla: Alumnos2 CodAlum ---> PK, CHAR(5) NomAlum ---> VARCHAR(30) ApeAlum ---> VARCHAR(40) FecNacAlum ---> DATETIME SexAlum ---> CHAR(1) Crear un SP que nos permita insertar un registro. El código de alumno se debe generar de la siguiente manera: Primer carácter del nombre + Primer carácter del
  • 5. apellido + número correlativo en función del número total de registros empezando de 001. create proc SP_Alumno2 (@N varchar(30), @A varchar(40), @F datetime, @S char(1)) As Declare @C char(5) Declare @NR int Select @NR =COUNT(*) From Alumno2 If(@NR<9) Set @C= LEFT(@N,1)+LEFT(@A,1)+'00'+LTRIM(Str(@NR+1)) Else if(@NR<99) Set @C= LEFT(@N,1)+LEFT(@A,1)+'0'+LTRIM(Str(@NR+1)) Else Set @C= LEFT(@N,1)+LEFT(@A,1)+'0'+LTRIM(Str(@NR+1)) Insert into Alumno2 Values (@C,@N, @A,@f,@S) Select * From Alumno2 SP_Alumno2 'Carlos','Celis','06/09/2021','M' 14. Crear la Tabla “Alumnos3”. Tabla: Alumnos3 CodAlum ---> PK, CHAR(7) NomAlum ---> VARCHAR(30) ApeAlum ---> VARCHAR(40) FecNacAlum ---> DATETIME SexAlum ---> CHAR(1) Crear un SP que nos permita insertar un registro. El código de alumno se debe generar de la siguiente manera: El año de nacimiento + número correlativo en función del número total de registros empezando en 001. Create Table Alumno3 (CodAlum CHAR(7) PRIMARY KEY, NomAlum varchar(30), ApeAlum varchar(40), FecNacAlum Datetime, SexAlum Char(1)) Go create proc Sp_Insertar @NomAlum varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum Char(1) As Begin Declare @Codigo char(7) Declare @NR int Select @NR =COUNT(*) From Alumno3 if(@NR<9) Set @Codigo= LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1) Else if(@NR<99) Set @Codigo= LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1) else Set @Codigo= LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1)
  • 6. END Select* From Alumno3 go Exec Sp_Insertar 'Pedro','Castel','1999/08/01','M' 15. Crear la Tabla “Alumnos4”. Tabla: Alumnos4 CodAlum ---> PK, CHAR(8) NomAlum ---> VARCHAR(30) ApeAlum ---> VARCHAR(40) FecNacAlum ---> DATETIME SexAlum ---> CHAR(1) Crear un SP que nos permita insertar un registro. El código de alumno se debe generar de la siguiente manera: Sexo + El año de nacimiento + número correlativo en función del número total de registros empezando en 001. Create table Alumno4 (CodAlum CHAR(8) PRIMARY KEY, NomAlum varchar(30), ApeAlum varchar(40), FecNacAlum Datetime, SexAlum Char(1)) Go create proc Sp_Insertar4 @NomAlum varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum Char(1) As Begin Declare @Codigo char(8) Declare @NR int Select @NR =COUNT(*) From Alumno4 if(@NR<9) Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1) else if(@NR<99) Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1) else Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1) insert into Alumno4 Values(@Codigo,@NomAlum,@ApeAlum,@FecNacAlum,@SexAlum) end Select * From Alumno4 go Exec Sp_Insertar4 'Pedro','Castel','1999/08/01','M' 16. Crear la Tabla “Alumnos5”. Tabla: Alumnos5 CodAlum ---> PK, CHAR(8) NomAlum ---> VARCHAR(30) ApeAlum ---> VARCHAR(40)
  • 7. FecNacAlum ---> DATETIME SexAlum ---> CHAR(1) Crear un SP que nos permita insertar un registro. El código de alumno se debe generar de la siguiente manera: Sexo + El año de nacimiento + número correlativo en función del número total de registros empezando en 001. Create table Alumno5 (CodAlum CHAR(8) PRIMARY KEY, NomAlum varchar(30), ApeAlum varchar(40), FecNacAlum Datetime, SexAlum Char(1)) Alter proc Sp_Insertar5 @NomAlum varchar(30), @ApeAlum varchar(40), @FecNacAlum datetime, @SexAlum Char(1) As Begin Declare @Codigo char(8) Declare @NR int Select @NR =ISNULL(Max(Right(CodAlum,3)),0) From Alumno5 if(@NR<9) Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'00'+LTRIM(@NR+1) else if(@NR<99) Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+'0'+LTRIM(@NR+1) else Set @Codigo=@SexAlum+LTRIM(Year(@FecNacAlum))+LTRIM(@NR+1) insert into Alumno5 Values(@Codigo,@NomAlum,@ApeAlum,@FecNacAlum,@SexAlum) end Select * From Alumno5 go Exec Sp_Insertar5 'Pedro','Castel','1999/08/01','M' Considerar la posibilidad que eliminar registros, es por eso que debemos cambiar el count(*) por Max aplicado a los tres últimos caracteres del código de alumno: Max(right(CodAlum)) o isnull(MAX(RIGHT(CodAlum,3)),0) 17. Crear un Stored Procedure que nos permita seleccionar y mostrar un empleado aleatoriamente. Alter Proc SP_Empledo_Aleatorio As Begin Declare @A int set @A= RAND(1)*10 Select * From Employees Where EmployeeID=@A END exec SP_Empledo_Aleatorio
  • 8. 18. Crear un Stored Procedure que nos permita seleccionar “N” Clientes aleatoriamente. create proc Sp_MostrarEmpleado As Declare @A Integer Set @A=FLOOR(RAND()*10) Select top(@A)* From Customers Exec Sp_MostrarEmpleado