dml

8
Data Manipulation Language (DML) Lenguaje de Manipulación de Datos Diseño de Base de Datos Ing. Luis Reyes

Upload: miguel-enigmah

Post on 03-Oct-2015

212 views

Category:

Documents


0 download

DESCRIPTION

dml ufg

TRANSCRIPT

  • Data Manipulation Language (DML) Lenguaje de Manipulacin de Datos

    Diseo de Base de DatosIng. Luis Reyes

  • Transacciones de la Base de datos

    Proporcionan mayor flexibilidad y controlcuando los datos cambian y ello asegura la consistencia de los datos en el caso de un fallo en el proceso del usuario o del sistema.

    Las transacciones consisten de sentencias DML que componen un cambio consistente en los datos.

  • DML

    Se utiliza para:

    Agregar, actualizar o eliminar datos de una base de datos.

    Cuando algo impide que una de las sentencias en la transaccin sea ejecutada, las otras sentencias de la transaccin pueden ser desechadas.

  • Errores comunes al insertar datos

    Olvidar valores obligatorios para columnas que no aceptan valores nulos

    Duplicar valores violando reglas de valores nicos

    Infringir reglas de integridad de llaves forneas

    Romper reglas de integridad de tipo CHECK o verificacin

    Incompatibilidad en tipos de datos

    Valores ms grandes que los especificados para la columna

  • Agregar

    Agregar una fila (registro) a una tabla:INSERT INTO table [(column [, column ])]VALUES (value [, value.]);

    Ejemplo:INSERT INTO agenda(id_ag, nombre, direccion);VALUES (34, Luis Alejandro, 7 Sur 234);

    INSERT INTO `biblio`.`libros` (`id_l` ,`titulo` ,`autor` ,`editorial` , `seccion` )VALUES ('1', 'Clculo Integral', 'Leithold', 'Mc Graw Hill', 'Matemticas'), ('2', 'Algebra', 'Baldor', 'Prentice Hall', 'Matemticas');

  • Copiar filas de otras tablas

    Se copian los datos de una tabla existente utilizando una subconsulta

    INSERT INTO ALUMNO(id_al, nombre, direccion)SELECT id_g, nombre, direccionFROM GENTEwhere edad>15;

    Si se van a copiar TODASINSERT INTO ALUMNOSELECT *FROM GENTE

  • Actualizar: Cambiar datos en una tabla

    UPDATE requi

    SET cantidad = 3, precio = 1200

    WHERE depto=1;

    Actualizar filas basado en otra tabla

    UPDATE copiaEmpleado

    SET id_dep = (SELECT id_dep FROM empleado

    WHERE id_emp=10)

    WHERE id_trab =20

  • Borrar filas de una tabla

    DELETE FROM depto

    WHERE nombre_depto=Academico;

    Basado en otra tabla

    DELETE FROM empleado

    WHERE id_dep =(SELECT id_dep

    FROM departamento

    WHERE nombre_dep=Sistemas