Base de Datos I - ECOTEC
-
Upload
khangminh22 -
Category
Documents
-
view
0 -
download
0
Transcript of Base de Datos I - ECOTEC
Introducción
DML es la parte de SQL que se usa para la recuperación o manipulación de
datos. Se refiere a los comandos responsables por las consultas y
modificaciones de los contenidos de las tablas.
Comandos más importantes:
Comando Función
SELECT Es el principal comando del lenguaje. Con él, el usuario
recupera datos de una tabla o vista.
INSERT Inserta una fila en una tabla.
DELETE Elimina filas de la tabla
UPDATE Modifica el contenido de las columnas (campos) de la tabla
COMMIT Graba en el disco las modificaciones introducidas.
ROLLBACK Deshace las modificaciones introducidas después del último
COMMIT
Lenguaje de Manipulación de Datos (DML) Expresiones y Operadores
SQL (SQL Server Particularmente) acepta los operadores más comunes que se
encuentran en la mayor parte de los lenguajes.
Los operadores actúan sobre operandos, o sea, sobre los elementos a los que
se les aplicará la operación determinada por el operador.
Existen dos tipos de operadores: los unarios, que actúan sobre un único
operando, y los binarios que actúan sobre dos operandos.
Aritméticos
Multiplicación ( * ), División ( / ), Sustracción ( - ), Adición ( + ), Módulo ( % ).
Comparación
Igualdad ( = ), Desigualdad ( <> ), Mayor que ( > ), Menor que ( < ), Mayor o
igual a ( >= ), Menor o igual a ( <= ), No menor que ( !< ), No mayor que ( !>),
No igual a ( != )
Lógicos NOT (Negación), AND (y lógico) , OR ( o lógico)
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
La instrucción SELECT se utiliza principalmente para la recuperación de datos
específicos de una Tabla o Vista.
Una instrucción SELECT puede ser simple o compleja (no es necesariamente
mejor que sea compleja). Hay que intentar construir las instrucciones SELECT
de la forma más sencilla posible siempre que recuperen los resultados
necesarios.
Por ejemplo, si se necesita mostrar solo dos columnas de una tabla, hay que
incluir solo esas dos columnas en la sentencia SELECT.
Nomenclatura:
SELECT nombre_de_columnas
FROM tabla_a_la_que_se_consulta
Se colocan los nombres de las columnas que se mostraran en el SELECT, separados por
una coma.
Se colocan los nombres de las Tablas a las cuales pertenecen las
columnas.
Ejemplo 1: Liste de la Tabla authors de la base de datos Pubs (base
de datos de ejemplo instalada por SQL SERVER) las columnas
au_fname (Primer Nombre) y au_lname (Segundo Nombre).
SELECT au_fname, au_lname
FROM authors
Ejemplo 2: Liste todos los atributos de la tabla authors. En SQL se
utiliza el comodín * para listar todos los campos de una tabla.
SELECT *
FROM authors
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
Después de que se haya decidido qué datos se necesitan y de qué tablas, se
puede determinar qué otras opciones, en caso necesario hay que utilizar. Estas
opciones pueden incluir especificar que columnas deberían estar en la cláusula
WHERE, especificar si hay que ordenar los datos devueltos y especificar si
sean de devolver solo valores distintos.
Cláusula WHERE
Esta cláusula permite hacer una selección sobre los atributos de las diversas
columnas que se desean mostrar, en base a diversas condiciones. Acá se
pueden ocupar algunos operadores de comparación y lógicos.
La clausula WHERE se ubica bajo la clausula FROM.
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
Cláusula WHERE
Ejemplo 1: Liste desde la tabla authors todos los autores que tengan dirección
en Oakland. Solo muestre el id, primer nombre, segundo nombre y la
ciudad.
Select au_id, au_fname, au_lname, city
From Authors
Where city = ‘Oakland’
Ejemplo 2: Utilizando operadores, realice una consulta que le permita listar el
id, primer nombre, segundo nombre y ciudad, de los autores que vivan en
Oakland y Palo Alto.
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
La clausula SELECT consiste en una lista de selección y posiblemente algunos
argumentos opcionales.
La lista de selección es la lista de expresiones o columnas que se especifican en
la clausula SELECT para indicar que datos hay que devolver.
Argumentos Opcionales Se pueden utilizar los siguientes dos argumentos en la
instrucción SELECT para controlar que filas se devuelven:
DISTINCT: devuelve solamente filas únicas. Si la lista de selección contiene
varias columnas, las filas se consideran únicas si los valores correspondientes en
al menos una de las columnas es diferente. Para que se dupliquen dos filas
deben contener valores idénticos en cada columna.
Ejemplo: Liste desde la tabla authors el primer nombre y el segundo, de tal
manera que no se repitan los datos.
SELECT DISTINCT au_fname, au_lname
FROM authors
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
TOP n [PERCENT]: Devuelve solamente las primeras filas del conjunto resultado.
PERCENT es opcional e indica un porcentaje de filas listadas de acuerdo al total
final, se debe por lo tanto indicar un porcentaje con valores entre 0 y 100.
Ejemplo 1: Liste la mitad de los primeros nombres y segundos nombres de la
tabla authors. (50 %)
SELECT TOP 50 PERCENT au_fname, au_lname
FROM authors
Ejemplo 2: Liste exactamente los 5 primeros nombres y segundos nombres de la
tabla authors.
SELECT TOP 5 au_fname, au_lname /* valores exactos no va PERCENT*/
FROM authors
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
Alias de Columna
Se puede utilizar un alias para clarificar el significado de los datos en una columna de salida, para
asignar una cabecera a una columna que se utiliza en una función.
Ejemplo: Cambiar el nombre de la columna de salida au_fname a Primer Nombre
SELECT au_fname AS PRIMER_NOMBRE
FROM authors
Cláusula ORDER BY
Esta cláusula permite ordenar el resultado de la consulta, definiendo el orden en que se presentan las
columnas seleccionadas en la lista de selección. Se pueden presentar en orden ascendente (por defecto)
y descendente (se coloca después de la columna a ordenar la palabra clave DESC).
Ejemplo 1: Liste los nombres de los autores (tabla authors) en orden descendente y ascendente.
a) SELECT au_fname, au_lname
FROM authors
ORDER BY au_fname
b) SELECT au_fname, au_lname
FROM authors
ORDER BY au_fname DESC
Lenguaje de Manipulación de Datos (DML) Instrucción SELECT
La instrucción INSERT se utiliza para insertar una fila de datos en una tabla o vista.
Nomenclatura:
INSERT INTO nombre_tabla (columna1, columna2, ….., columnaN)
VALUES ( valor1, valor2,….., valorN )
Ejemplo: Inserte los campos a la tabla Demo2 (codigo, nombre, estado)
INSERT INTO Demo2 (codigo, nombre, estado)
VALUES (1, ‘Sergio’, ‘CA’ )
NOTA: la lista de los datos a ingresar tienen que ser en el mismo orden de las columnas
definidas.
Si usted va ingresar todos los datos asociados a la Tabla, no necesita colocar el nombre de
las columnas solo los valores a registrar.
Ejemplo: Insertar una fila en la tabla Demo2.
INSERT INTO DEMO2 VALUES (2, ‘RAUL’, ‘CA’)
Lenguaje de Manipulación de Datos (DML) Instrucción INSERT
Lenguaje de Manipulación de Datos (DML) Instrucción UPDATE
La introducción UPDATE se utiliza para actualizar o cambiar un valor o valores en una fila o filas
de una tabla.
Nomenclatura:
UPDATE nombre_tabla_actualizar
SET columna_actualizar1 = nuevo_valor,
columna_actualizar2 = nuevo_valor
WHERE condiciones_para_actualizar
Ejemplo: Actualice el atributo nombre de la tabla Demo2, que referencia a RAUL por el Nombre
Pedro, y su estado de CA a UE.
Acá se colocan las columnas
que serán modificadas dentro
de la fila o filas.
Se colocan condiciones para poder
actualizar. De la condición dependen las
filas que se actualizan.
UPDATE Demo2
SET nombre = ‘PEDRO’,
estado = ‘UE’
WHERE codigo = 2 AND nombre = ‘RAUL’
Lenguaje de Manipulación de Datos (DML) Instrucción UPDATE
La instrucción DELETE se utiliza para borrar una fila o filas de datos de una tabla.
Se puede incluso borrar todas las filas de una tabla.
Nomenclatura:
DELETE FROM nombre_tabla
WHERE condiciones_para_borrar
Ejemplo 1: Borre desde la tabla Demo2 el código 2.
DELETE FROM Demo2
WHERE codigo = 2
Ejemplo 2: Borre todas las filas de la Tabla Demo2
DELETE FROM Demo2
Lenguaje de Manipulación de Datos (DML) Instrucción DELETE
BibliografíaTEXTO AUTOR EDITORIAL
“Sistema de Gestin de Bases de Datos” RaghuRamakrishnan, Johannes Gehrke Mc Graw Hill, 2003, 3ra Edición
“Fundamentos de bases de datos” Henry Korth y Abraham Silberschatz Mc Graw Hill,2006, 5ta Edición
“Bases de datos: Modelos, Lenguajes, Diseño” James L. Jonson
“El modelo entidad-relación” Barker Addison-Wesley Iberoamericana España,
“Bases de Datos” Rafael Camps Paré, Luis Alberto Casillas UOC
Bases de DatosDistribuidas BELZEBU Formato PDF (Atrium)
TEXTO AUTOR EDITORIAL
“Curso 2778 Writing Queries Using Microsoft SQL Server 2008 Transact-SQL”
Microsoft Microsoft Learning
PHP Y MySQL para Dummies Valade Janet Formato PDF (Atrium)
MySQL http://www.mysql.com Open Source