Sql Tema 4

Publicado: 13 de febrero de 2015 en Actualidad

Intro a SQL y MySQL – Tema 4 – Modificar información

4.1 Modificación de datos

Ya sabemos borrar datos, pero existe una operación más frecuente que esa (aunque también ligeramente más complicada): modificar los datos existentes. Con lo que sabíamos hasta ahora, podíamos hacer algo parecido: si un dato es incorrecto, podríamos borrarlo y volver a introducirlo, pero esto, obviamente, no es lo más razonable… debería existir alguna orden para cambiar los datos. Así es. El formato habitual para modificar datos de una tabla es "update tabla set campo=nuevoValor where condicion".

Por ejemplo, si hemos escrito "Alberto" en minúsculas ("alberto"), lo podríamos corregir con:

UPDATE personas SET nombre = 'Alberto' WHERE nombre = 'alberto';

Y si queremos corregir todas las edades para sumarles un año se haría con

UPDATE personas SET edad = edad+1;

(al igual que habíamos visto para "select" y para "delete", si no indicamos la parte del "where", los cambios se aplicarán a todos los registros de la tabla).

4.2 Modificar la estructura de una tabla

Algo más complicado es modificar la estructura de una tabla: añadir campos, eliminarlos, cambiar su nombre o el tipo de datos. En general, para todo ello se usará la orden "alter table". Vamos a ver las posibilidades más habituales.

Para añadir un campo usaríamos "add":

ALTER TABLE ciudades ADD habitantes decimal(7);

Si no se indica otra cosa, el nuevo campo se añade al final de la tabla. Si queremos que sea el primer campo, lo indicaríamos añadiendo "first" al final de la orden. También podemos hacer que se añada después de un cierto campo, con "after nombreCampo".

Podemos modificar el tipo de datos de un campo con "modify". Por ejemplo, podríamos hacer que el campo "habitantes" no fuera un "decimal" sino un entero largo ("bigint") con:

ALTER TABLE ciudades MODIFY habitantes bigint;

Si queremos cambiar el nombre de un campo, debemos usar "change" (se debe indicar el nombre antiguo, el nombre nuevo y el tipo de datos). Por ejemplo, podríamos cambiar el nombre "habitantes" por "numhabitantes":

ALTER TABLE ciudades CHANGE habitantes numhabitantes bigint;

Si queremos borrar algún campo, usaremos "drop column":

ALTER TABLE ciudades DROP COLUMN numhabitantes;

Muchas de estas órdenes se pueden encadenar, separadas por comas. Por ejemplo, podríamos borrar dos campos con "alter table ciudades drop column num habitantes, drop column provincia;"

Finalmente, también podríamos cambiar el nombre de una tabla con "rename":

ALTER TABLE ciudades RENAME ciudad;
Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s