semana 6 comando de definición de datos segunda parte 2

Upload: didier-guana

Post on 25-Feb-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    1/11

    SQLComando de definicin de

    datos

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    2/11

    Modificando TablasCuando se crea una tabla y se produce un error dediseo, o existe una exigencia de cambio debido amodificaciones en los requerimientos de las aplicacionesque acceden a la informacin de la base de datos, sepuede eliminar la tabla y volver a crearla. Pero esto no esuna opcin conveniente si la tabla tiene datos, o si latabla hace referencia a otros objetos de base de datos(por ejemplo, una restriccin de clave externa).

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    3/11

    Modificando TablasUsted puede:

    Agregar columnas,

    Eliminar las columnas, Agregar restricciones,

    Eliminar las restricciones,

    Cambie los valores predeterminados,

    Cambie los tipos de datos de columna,

    Cambiar el nombre de las columnas, Cambiar el nombre de las tablas.

    Todas estas acciones se realizan utilizando el comandoALTER TABLE

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    4/11

    Agregando columnaPara agregar una columna utilizamos el siguientecomando:

    ALTER TABLE tabla ADD COLUMN columna_nueva ;

    En un ejemplo:

    ALTER TABLE producto ADD COLUMN decripcionvarchar(100);

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    5/11

    Eliminando una columnaPara eliminar una columna se usa el siguiente comando:

    ALTER TABLE tabla DROP COLUMN columna_existente;

    En un ejemplo:

    ALTER TABLE producto DROP COLUMN decripcion;

    Al eliminar la columna los datos que se encontraban en lacolumna desaparece.

    Sin embargo, si la columna hace referencia a una restriccin declave externa de la otra tabla, se producira un error.

    Se puede autorizar eliminar todo lo que depende de la columnamediante la adicin de CASCADE:

    ALTER TABLE producto DROP COLUMN descripcion CASCADE;

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    6/11

    Agregando una RestriccinPara agregar una restriccin, se utiliza la sintaxis derestriccin de tabla. Por ejemplo:

    ALTER TABLE producto ADD CHECK (nombre );

    ALTER TABLE producto ADD CONSTRAINT Producto_UnicoUNIQUE(id_producto);

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    7/11

    Agregando una RestriccinCREATE TABLE tabla (a integer,

    b integer,

    c integer,

    PRIMARY KEY(a));

    ALTER TABLE tabla ADD FOREIGN KEY (b) REFERENCESotra_tabla(b1)

    La restriccin se comprueba de inmediato, por lo que los datosde la tabla deben satisfacer la restriccin antes de que pueda seraadida.

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    8/11

    Eliminando una RestriccinPara eliminar una restriccin se necesita conocer sunombre.

    Es importante tener presente que si no se le asigna unnombre a la restriccin, el sistema le provee un nombre

    generado, lo que es necesario saber si se desea eliminar.

    La estructura es:

    ALTER TABLEproducto DROP CONSTRAINTProducto_Unico;

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    9/11

    Cambiando un valor pordefecto de una columnaPara cambiar a un valor por defecto en unacolumna, se usa el siguiente comando:

    ALTER TABLE producto ALTER COLUMN precio SETDEFAULT7.77;

    No afecta a los datos existentes sino a las nuevasinserciones.

    Para eliminar, con los siguientes comandos:

    ALTER TABLE producto ALTER COLUMN precio DROPDEFAULT;

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    10/11

    Cambiando un tipo de datode una columna

    Para convertir un tipo de dato de una columna es senecesita la siguiente estructura:

    ALTER TABLE producto ALTER COLUMN precio TYPEnumeric(10,2);

    Es importante mencionar , que sera existosa la ejecucionde la sentencia si los datos se pueden convertir al nuevotipo.

  • 7/25/2019 Semana 6 Comando de Definicin de Datos Segunda Parte 2

    11/11

    Eliminar TablaA veces podemos decidir que necesitamos eliminar una tabla enla base de datos por alguna razn. De hecho, sera problemticosi no podemos hacerlo ya que esto creara una pesadilla de

    mantenimiento para DBA. Afortunadamente, SQL nos permitehacerlo, ya que podemos utilizar el comando DROP TABLE. Lasintaxis para DROP TABLEes:

    DROP TABLE "nombre_tabla";

    Entonces, si deseamos eliminar una tabla denominada clienteque creamos en la seccin CREATE TABLE, simplemente

    ingresamosDROP TABLE Cliente;