HTMLpointHTMLpoint HTMLpoint.com


 Actualizar la base de datos



Normalmente, las informaciones presentes en una base de datos no son estáticas, sino que evolucionan en el tiempo. Existe, por tanto, la necesidad no sólo de añadir nuevos datos, sino de modificar los que están ya incluidos en las tablas de la base de datos. Las instrucciones SQL que se usan para este fin son UPDATE y DELETE. La primera modifica los valores presentes en una o más columnas de una o más líneas de una tabla. La segunda elimina una o más líneas de una tabla.
La sintaxis de UPDATE es la siguiente:

UPDATE nombre_tabla
SET lista_asignaciones
[ WHERE expresión_condicional ]


Las asignaciones se especifican del modo:

nombre_columna = expresión_escalar

La instrucción UPDATE actualiza las columnas de la tabla que se han especificado en la cláusula SET, utilizando los valores que son calculados por las correspondientes expresiones escalares. Si se expresa también la cláusula WHERE, se actualizan sólo las líneas que satisfacen la expresión condicional. Véase que la expresión escalar usada para actualizar una columna puede ser también el resultado de una query escalar, es decir una query que devuelve una sola línea y una sola columna.

Veamos un ejemplo:

UPDATE Person
SET given_names = 'Stefano'
WHERE surname = 'Spaccapietra'


La instrucción anterior cambia el valor de la columna given_name de la tabla Person en las líneas (en nuestro caso es una sola) en que la columna surname tiene valor 'Spaccapietra'.

La sintaxis de DELETE es:

DELETE FROM nombre_tabla
[ WHERE expresión_condicional ]


La instrucción delete elimina de una tabla todas las líneas que satisfacen la expresión condicional de la cláusula WHERE. Si WHERE no se especifica, se cancelan todas las líneas de la tabla.

Si en la definición de la tabla se han especificado las cláusulas ON UPDATE u ON DELETE, en el momento en que se ejecutan estas operaciones también se ejecutan las que habían estado previstas en las columnas referenciadas (CASCADE, SET DEFAULT o SET NULL).


  Torna a inizio pagina