12-11-09
SQL
4to “B”
Actualizar registros (update)
Decimos que actualizamos un registro cuando modificamos alguno de sus valores.
Para modificar uno o varios datos de uno o varios registros utilizamos "update" (actualizar).
Por ejemplo, en nuestra tabla "usuarios", queremos cambiar los valores de todas las claves, por "RealMadrid":
update usuarios set clave='RealMadrid';
Utilizamos "update" junto al nombre de la tabla y "set" junto con el campo a modificar y su nuevo valor.
El cambio afectará a todos los registros.
Podemos modificar algunos registros, para ello debemos establecer condiciones de selección con "where".
Por ejemplo, queremos cambiar el valor correspondiente a la clave de nuestro usuario llamado "Federicolopez", queremos como nueva clave "Boca", necesitamos una condición "where" que afecte solamente a este registro:
update usuarios set clave='Boca' where nombre='Federicolopez';
Si Microsoft SQL Server no encuentra registros que cumplan con la condición del "where", no se modifica ninguno.
Las condiciones no son obligatorias, pero si omitimos la cláusula "where", la actualización afectará a todos los registros.
También podemos actualizar varios campos en una sola instrucción:
update usuarios set nombre='Marceloduarte', clave='Marce' where nombre='Marcelo';
Para ello colocamos "update", el nombre de la tabla, "set" junto al nombre del campo y el nuevo valor y separado por coma, el otro nombre del campo con su nuevo valor.
Vamos a crear la tabla usuarios:
create table usuarios(nombre varchar(20), clave varchar(10) );
Ingresamos algunos registros:
insert into usuarios (nombre,clave)
values ('Marcelo','River');
insert into usuarios (nombre,clave)
values ('Susana','chapita');
insert into usuarios (nombre,clave)
values ('Carlosfuentes','Boca');
insert into usuarios (nombre,clave)
values ('Federicolopez','Boca');
Cambiaremos los valores de todas las claves, por la cadena "RealMadrid":
update usuarios set clave='RealMadrid';
El cambio afectó a todos los registros, veámoslo:
select *from usuarios;
Necesitamos cambiar el valor de la clave del usuario llamado "Federicolopez" por "Boca":
update usuarios set clave='Boca' where nombre='Federicolopez';
Verifiquemos que la actualización se realizó:
select *from usuarios;
Vimos que si Microsoft SQL Server no encuentra registros que cumplan con la condición no se modifican registros:
update usuarios set clave='payaso' where nombre='JuanaJuarez';
Si vemos la tabla veremos que no a cambiado:
select *from usuarios;
Para actualizar varios campos en una sola instrucción empleamos:
update usuarios set nombre='Marceloduarte', clave='Marce' where nombre='Marcelo';
Si vemos la tabla:
select *from usuarios;
1- Vamos ahora a Crear la tabla agenda:
create table agenda(apellido varchar(30), nombre varchar(20), domicilio varchar(30),
telefono varchar(11) );
2- Ingrese los siguientes registros (1 registro actualizado):
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Acosta','Alberto','Colon 123','4234567');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Juarez','Juan','Avellaneda 135','4458787');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Lopez','Maria','Urquiza 333','4545454');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Lopez','Jose','Urquiza 333','4545454');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Suarez','Susana','Gral. Paz 1234','4123456');
3- Modifique el registro cuyo nombre sea "Juan" por "Juan Jose" (1 registro afectado)
update agenda set nombre='Juan Jose' where nombre='Juan';
4- Actualice los registros cuyo número telefónico sea igual a "4545454" por "4445566"
(2 registros afectados)
update agenda set telefono='4445566' where telefono='4545454';
5- Actualice los registros que tengan en el campo "nombre" el valor "Juan" por "Juan Jose" (ningún
registro afectado porque ninguno cumple con la condición del "where")
update agenda set nombre='Juan Jose' where nombre='Juan';
6 - Luego de cada actualización ejecute un select que muestre todos los registros de la tabla.
select * from agenda;
Ahora Ustedes van a Trabajar con la tabla "libros".
1- Créela con los siguientes campos: titulo (cadena de 30 caracteres de longitud), autor (cadena de 20), editorial (cadena de 15) y precio (float):
create table libros (titulo varchar(30), autor varchar(20), editorial varchar(15),
precio float);
2- Ingrese los siguientes registros:
insert into libros (titulo, autor, editorial, precio)
values ('El aleph','Borges','Emece',25.00);
insert into libros (titulo, autor, editorial, precio)
values ('Martin Fierro','Jose Hernandez','Planeta',35.50);
insert into libros (titulo, autor, editorial, precio)
values ('Aprenda PHP','Mario Molina','Emece',45.50);
insert into libros (titulo, autor, editorial, precio)
values ('Cervantes y el quijote','Borges','Emece',25);
insert into libros (titulo, autor, editorial, precio)
values ('Matematica estas ahi','Paenza','Siglo XXI',15);
3- Muestre todos los registros (5 registros):
select *from libros;
4- Modifique los registros cuyo autor sea igual a "Paenza", por "Adrian Paenza" (1 registro afectado)
update libros set autor='Adrian Paenza' where autor='Paenza';
5- Nuevamente, modifique los registros cuyo autor sea igual a "Paenza", por "Adrian Paenza" (ningún registro afectado porque ninguno cumple la condición)
update libros set autor='Adrian Paenza' where autor='Paenza';
6- Actualice el precio del libro de "Mario Molina" a 27 pesos (1 registro afectado):
update libros set precio=27 where autor='Mario Molina';
7- Actualice el valor del campo "editorial" por "Emece S.A.", para todos los registros cuya editorial sea igual a "Emece" (3 registros afectados):
update libros set editorial='Emece S.A.' where editorial='Emece';
9 - Luego de cada actualización ejecute un select que mustre todos los registros de la tabla.
select * from libros;
Para modificar uno o varios datos de uno o varios registros utilizamos "update" (actualizar).
Por ejemplo, en nuestra tabla "usuarios", queremos cambiar los valores de todas las claves, por "RealMadrid":
update usuarios set clave='RealMadrid';
Utilizamos "update" junto al nombre de la tabla y "set" junto con el campo a modificar y su nuevo valor.
El cambio afectará a todos los registros.
Podemos modificar algunos registros, para ello debemos establecer condiciones de selección con "where".
Por ejemplo, queremos cambiar el valor correspondiente a la clave de nuestro usuario llamado "Federicolopez", queremos como nueva clave "Boca", necesitamos una condición "where" que afecte solamente a este registro:
update usuarios set clave='Boca' where nombre='Federicolopez';
Si Microsoft SQL Server no encuentra registros que cumplan con la condición del "where", no se modifica ninguno.
Las condiciones no son obligatorias, pero si omitimos la cláusula "where", la actualización afectará a todos los registros.
También podemos actualizar varios campos en una sola instrucción:
update usuarios set nombre='Marceloduarte', clave='Marce' where nombre='Marcelo';
Para ello colocamos "update", el nombre de la tabla, "set" junto al nombre del campo y el nuevo valor y separado por coma, el otro nombre del campo con su nuevo valor.
Vamos a crear la tabla usuarios:
create table usuarios(nombre varchar(20), clave varchar(10) );
Ingresamos algunos registros:
insert into usuarios (nombre,clave)
values ('Marcelo','River');
insert into usuarios (nombre,clave)
values ('Susana','chapita');
insert into usuarios (nombre,clave)
values ('Carlosfuentes','Boca');
insert into usuarios (nombre,clave)
values ('Federicolopez','Boca');
Cambiaremos los valores de todas las claves, por la cadena "RealMadrid":
update usuarios set clave='RealMadrid';
El cambio afectó a todos los registros, veámoslo:
select *from usuarios;
Necesitamos cambiar el valor de la clave del usuario llamado "Federicolopez" por "Boca":
update usuarios set clave='Boca' where nombre='Federicolopez';
Verifiquemos que la actualización se realizó:
select *from usuarios;
Vimos que si Microsoft SQL Server no encuentra registros que cumplan con la condición no se modifican registros:
update usuarios set clave='payaso' where nombre='JuanaJuarez';
Si vemos la tabla veremos que no a cambiado:
select *from usuarios;
Para actualizar varios campos en una sola instrucción empleamos:
update usuarios set nombre='Marceloduarte', clave='Marce' where nombre='Marcelo';
Si vemos la tabla:
select *from usuarios;
1- Vamos ahora a Crear la tabla agenda:
create table agenda(apellido varchar(30), nombre varchar(20), domicilio varchar(30),
telefono varchar(11) );
2- Ingrese los siguientes registros (1 registro actualizado):
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Acosta','Alberto','Colon 123','4234567');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Juarez','Juan','Avellaneda 135','4458787');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Lopez','Maria','Urquiza 333','4545454');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Lopez','Jose','Urquiza 333','4545454');
insert into agenda (apellido,nombre,domicilio,telefono)
values ('Suarez','Susana','Gral. Paz 1234','4123456');
3- Modifique el registro cuyo nombre sea "Juan" por "Juan Jose" (1 registro afectado)
update agenda set nombre='Juan Jose' where nombre='Juan';
4- Actualice los registros cuyo número telefónico sea igual a "4545454" por "4445566"
(2 registros afectados)
update agenda set telefono='4445566' where telefono='4545454';
5- Actualice los registros que tengan en el campo "nombre" el valor "Juan" por "Juan Jose" (ningún
registro afectado porque ninguno cumple con la condición del "where")
update agenda set nombre='Juan Jose' where nombre='Juan';
6 - Luego de cada actualización ejecute un select que muestre todos los registros de la tabla.
select * from agenda;
Ahora Ustedes van a Trabajar con la tabla "libros".
1- Créela con los siguientes campos: titulo (cadena de 30 caracteres de longitud), autor (cadena de 20), editorial (cadena de 15) y precio (float):
create table libros (titulo varchar(30), autor varchar(20), editorial varchar(15),
precio float);
2- Ingrese los siguientes registros:
insert into libros (titulo, autor, editorial, precio)
values ('El aleph','Borges','Emece',25.00);
insert into libros (titulo, autor, editorial, precio)
values ('Martin Fierro','Jose Hernandez','Planeta',35.50);
insert into libros (titulo, autor, editorial, precio)
values ('Aprenda PHP','Mario Molina','Emece',45.50);
insert into libros (titulo, autor, editorial, precio)
values ('Cervantes y el quijote','Borges','Emece',25);
insert into libros (titulo, autor, editorial, precio)
values ('Matematica estas ahi','Paenza','Siglo XXI',15);
3- Muestre todos los registros (5 registros):
select *from libros;
4- Modifique los registros cuyo autor sea igual a "Paenza", por "Adrian Paenza" (1 registro afectado)
update libros set autor='Adrian Paenza' where autor='Paenza';
5- Nuevamente, modifique los registros cuyo autor sea igual a "Paenza", por "Adrian Paenza" (ningún registro afectado porque ninguno cumple la condición)
update libros set autor='Adrian Paenza' where autor='Paenza';
6- Actualice el precio del libro de "Mario Molina" a 27 pesos (1 registro afectado):
update libros set precio=27 where autor='Mario Molina';
7- Actualice el valor del campo "editorial" por "Emece S.A.", para todos los registros cuya editorial sea igual a "Emece" (3 registros afectados):
update libros set editorial='Emece S.A.' where editorial='Emece';
9 - Luego de cada actualización ejecute un select que mustre todos los registros de la tabla.
select * from libros;
esa tarea es demasiado largaaaaaaaa CHUCHOOOOOO
ResponderEliminar