Sunteți pe pagina 1din 23

CENTRO DE BACHILLERATO TECNOLOGICO industrial y de servicios N 4

CURSO DEL MODULO 1:

DESARROLLA SOFTWARE DE APLICACIN UTILIZANDO PROGRAMACIN ESTRUCTURADA CON ALMACENAMIENTO PERSISTENTE DE DATOS
SUBMODULO 2:
DISEA Y ADMINISTRA BASES DE DATOS AVANZADAS

ING. HUMBERTO DE LA ROSA GUAJARDO.

Agosto 2013, Cd. Lerdo, Dgo.

humbrosa@gmail.com

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4 64 HRS

SUBMODULO 2: DISEA Y ADMINISTRA BASES DE DATOS AVANZADAS.


CONTENIDO:
1. 2. 3. 4. 5.

Consultas SQL y operaciones de seleccin sobre Bases de Datos. Manejo de software para la administracin de informacin de las Bases de Datos. Migracin de las Bases de Datos. Respaldo, Recuperacin y control de acceso a la informacin de las Bases de Datos. Desarrollo de aplicaciones con acceso a las Bases de Datos.

COMPETENCIAS:
1. 2. 3. 4. 5. Ejecuta operaciones de seleccin sobre la base de datos. Administra informacin de la base de datos. Realiza la migracin de una base de datos Respalda, recupera y controla el acceso de la informacin de una base de datos. Desarrolla aplicaciones con acceso a bases de datos.

BIBLIOGRAFA:
CHARTE F., (2009), SQL Server 2008 (1a edic.), Anaya Multimedia, Mxico. CUADRA, D., Castro, E., Iglesias, A. M., Martnez, P., Calle, F. J., De Pablo, C., y otros. Desarrollo de Bases de Datos. Alfaomega Ra-Ma. Espaa, 2008 GROFF, J.R., Weinberg, P.N. (2007), Manual de referencia de SQL. , Mc Graw Hill., Mxico. HELM, S. Programacin de Base de Datos Con MySQL y PHP. Alfaomega Marcombo. Mxico, 2010. HOTEK, Mike. SQL Server 2008. Grupo Anaya Comercial. Mxico, 2009. KENDALL y Kendall E. (2011). Anlisis y diseo de sistemas. (8 edicin) Prentice Hall. Mxico. MANNINO, M. V. (2007). Administracin de bases de datos diseo y desarrollo de aplicaciones. Mc Graw Hill. PEREZ, C. (2011), Microsoft SQL Server 2008 R2, Curso prctico RA-MA, Mxico. PEREZ Marqus Mara, (2012), Microsoft SQL Server 2008 R2 Motor de base de datos y admon., Alfaomega, Mxico. PRATT, P.J., Last, M.Z. (2009), SQL (1a edic.), Anaya Multimedia, Mxico. PRESSMAN, Roger S. (2005). Ingeniera del Software. Un enfoque prctico. McGraw Hill. Mxico. RICO, E. (2009). Diseo y administracin de bases de datos aula politcnica / informtica. Madrid: Ediciones UPC. Captulos 1 y 2.

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD ENLACES WEB:


http://sql-principiantes.blogspot.mx/ http://www.1keydata.com/es/sql/ http://functionx.com/sqlserver/ http://sqlserversamples.codeplex.com/ http://www.aulaclic.es/sql/index.htm http://www.desarrollandosoftware.com/posts1/SQL2008-AdvetureWorks-Northwind.html

CBTis 4

http://sacate20enprogramacion.blogspot.mx/2011/05/microsoft-sql-server-2008-fullkeygen.html

PROGRAMA DE PRCTICAS DEL MDULO 1 DE PROGRAMACIN: SUBMDULO 2


N 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. DESCRIPCIN Instalacin y Entorno del SMBD SQL Server. Clientes SQL Server: Management Studio y SQLDBx. Crear de tablas con lenguaje de consultas SQL. Consultas SQL por criterios diversos. Tablas y adicin de Registros con SQL. Creacin de tablas simples en SQL Server. Base de datos y crear tablas en SQL Server. Base de datos y tablas en SQL Server. Importar Base de datos DBF a SQL Server. Migracin de datos de Tabla Excel *.XLS a SQL Server. Migrando Base de datos Access a SQL Server. Migrando datos de texto plano *.CSV a SQL Server. Aplicando la Migrancin de datos. Base de datos y tablas en SQL Server. Base de datos y tablas en SQL Server. Consultas con filtros en SQL Server. Aplicacin de Create database y Create table en MS SQL Server. Bases de datos y tablas por asistente de SQL Server. Consultas de tabla previa en MS SQL Server. Importar Tablas de Excel y crear consultas simples en MS SQL Server. *.DOC *.DOC *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) y DOC *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.DBF, *.MDF, *.SQL ( TBL) *.XLS, *.MDF, *.SQL ( TBL) *.AADB, *.MDF, *.SQL ( TBL) *.CSV, *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.MDF, *.SQL ( TBL) *.SQL *.MDF (3 TBL Y CONS) *.MDF ( TBL) *.MDF ( TBL) *.MDF, *.SQL ( TBL) PRODUCTOS DE APDZJE

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4 64 HRS.

SUBMODULO 2: DISEA Y ADMINISTRA BASES DE DATOS AVANZADAS.

I UNIDAD
1. CONSULTAS SQL Y OPERACIONES DE SELECCIN DE LAS BASES DE DATOS.
El SQL (Structured query language), lenguaje de consulta estructurado, es un lenguaje surgido de un proyecto de investigacin de IBM para el acceso a bases de datos relacionales. Actualmente se ha convertido en un estndar de lenguaje de bases de datos, y la mayora de los sistemas de bases de datos lo soportan, desde sistemas para ordenadores personales, hasta grandes ordenadores. A partir de este estndar otros sistemas han desarrollado otras variantes de SQL, cambios que no suponen ninguna complicacin para alguien que conozca un SQL, como el que se ve en este curso con: Access2010 y SQL Server 2008. SQL nos permite realizar consultas a la base de datos, sin embargo SQL adems realiza funciones de definicin, control y gestin de la base de datos. Las sentencias SQL se clasifican segn su finalidad dando origen a tres lenguajes o mejor dicho sublenguajes: 1. DDL (Data Description Language), lenguaje de definicin de datos, incluye rdenes para definir, modificar o borrar las tablas en las que se almacenan los datos y de las relaciones entre estas. (Es el que ms varia de un sistema a otro). Incluye al grupo de sentencias del SQL que soportan la definicin y declaracin de los objetos de la base de datos. Objetos tales como: la base de datos misma(DATABASE), las tablas(TABLE), las Vistas (VIEW), los ndices (INDEX), los procedimientos almacenados (PROCEDURE), los disparadores (TRIGGER),Reglas (RULE), Dominios (Domain) y Valores por defecto(DEFAULT). CREATE, ALTER y DROP 2. DCL (Data Control Language), lenguaje de control de datos, contiene elementos tiles para trabajar en un entorno multiusuario, en el que es importante la proteccin de los datos, la seguridad de las tablas y el establecimiento de restricciones en el acceso, as como elementos para coordinar la comparticin de datos por parte de usuarios concurrentes, asegurando que no interfieren unos con otros. Grupo de sentencias del SQL para controlar las funciones de administracin que realiza el DBMS, tales como la atomicidad y seguridad. COMMIT TRANSACTION, ROLLBACK TRANSACTION, GRANT REVOKE. 3. DML (Data Manipulation Language), lenguaje de manipulacin de datos, nos permite recuperar los datos almacenados en la base de datos y tambin incluye rdenes para permitir al usuario actualizar la base de datos aadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados. Grupo de sentencias del SQL para manipular los datos que estn almacenados en las bases de datos, a nivel de filas (tuplas) y/o columnas (atributos). Ya sea que se requiera que los datos sean modificados, eliminados, consultados o que se agregaren nuevas filas a las tablas de las base de datos. INSERT, UPDATE, DELETE y SELECT. Caractersticas del lenguaje Una sentencia SQL es como una frase (escrita en ingls) que expresa: Lo que queremos obtener y de donde obtenerlo . Todas las sentencias empiezan con un verbo (palabra reservada que indica la accin a realizar), seguido del resto de clusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente, para describir esa sintaxis utilizaremos un diagrama sintctico como el que se muestra a continuacin. Las palabras en maysculas son palabras reservadas se tienen que poner tal cual y no se pueden utilizar para otro fin, por ejemplo, en el diagrama de la figura tenemos las palabras reservadas SELECT, ALL, DISTINCT, FROM, WHERE.

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Las palabras en minsculas son variables que el usuario deber sustituir por un dato concreto. En el diagrama tenemos ncolumna, expresion-tabla y condicion-de-busqueda.

PROCEDIMIENTO PARA IMPLEMENTACIN DE UNA BD.

PASO

DESCRIPCIN
Definir en el disco duro, el rea fsica que contendr las tablas de la base de datos. Sentencia SQL --> CREATE DATABASE. Crear las diferentes tablas de la base de datos. Sentencia SQL --> CREATE TABLE Insertar las filas de las diferentes tablas, sin violar la integridad de datos. Sentencia SQL --> INSERT INTO. Actualizar los datos que cambien con el tiempo en las diferentes tablas. Sentencia SQL --> UPDATE. Eliminar las filas que ya no se requieran en las diferentes tablas. Sentencia SQL --> DELETE Realizar las consultas deseadas a las tablas de la base de datos a travs de la poderosa sentencia de consultas del SQL, llamada SELECT. Dar nombre a las consultas elaboradas en el paso No.6 cuando se requiera ocultar el diseo y columnas de las tablas a travs de la creacin de vistas lgicas. Sentencia SQL ----> CREATE VIEW.

1 2 3 4 5 6 7

ACT 1. ACTIVIDAD EN PLATAFORMA: 1 FORO EN LINEA: GENERALIDADES DE LAS BASES DE DATOS AVANZADAS. Los alumnos, recuperan conocimientos previos sobre la programacin, analizan los cuestionamientos siguientes y expresan respuestas personales sobre: GENERALIDADES DEL LENGUAJE ESTRUCTURADO EN LAS BASES DE DATOS: 1. Que es SQL? 2. Que utilidad tiene SQL? 3. Describe 3 rdenes bsicas de SQL. 4. Cuales son los 3 lenguajes en que se apoya SQL? 5. Menciona 3 herramientas de software que reconocen el uso del SQL? Los comentarios vertidos deben ser breves, claros y concretos, adems los alumnos pueden corregir conceptos imprecisos manifestados por otros compaeros, as mismo deber evitarse confrontaciones personales y no utilizar lenguaje obsceno ni ofensivo, manteniendo en todo momento una actitud de cordialidad respeto. Nota: favor de no poner texto con fondo de color, por ser ilegible, adems los foros no incluyen conclusiones, ya que en algunos casos, se ha observado que algunos foristas expresan sus intervenciones con estas caractersticas no deseadas.

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD


INTRODUCCIN A SQL

CBTis 4

INTRODUCCIN El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por el motor de base de datos de Microsoft Jet. SQL se utiliza para crear objetos QueryDef, como el argumento de origen del mtodo OpenRecordSet y como la propiedad RecordSource del control de datos. Tambin se puede utilizar con el mtodo Execute para crear y manipular directamente las bases de datos Jet y crear consultas SQL de paso a travs para manipular bases de datos remotas cliente - servidor. COMPONENTES DE SQL El lenguaje SQL est compuesto por comandos, clusulas, operadores y funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos. COMANDOS Existen dos tipos de comandos SQL: Los DLL que permiten crear y definir nuevas bases de datos, campos e ndices. Los DML que permiten generar consultas para ordenar, filtrar y extraer datos de la base de datos.
COMANDOS DLL Comando CREATE DROP ALTER Descripcin Utilizado para crear nuevas tablas, campos e ndices. Empleado para eliminar tablas e ndices Utilizado para modificar las tablas agregando campos o cambiando la definicin de los campos.

COMANDOS DML Comando SELECT INSERT UPDATE DELETE Descripcin Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado. Utilizado para cargar lotes de datos en la base de datos en una nica operacin. Utilizado para modificar los valores de los campos y registros especificados. Utilizado para eliminar registros de una tabla de una base de datos.

CLUSULAS Las clusulas son condiciones de modificacin utilizadas para definir los datos que desea seleccionar o manipular
Clusula FROM WHERE GROUP BY HAVING ORDER BY Descripcin Utilizada para especificar la tabla de la cual se van a seleccionar los registros. Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar. Utilizada para separar los registros seleccionados en grupos especficos. Utilizada para expresar la condicin que debe satisfacer cada grupo. Utilizada para ordenar los registros seleccionados de acuerdo con un orden especfico.

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD


OPERADORES LGICOS
Operador AND OR NOT Uso Es el "y" lgico. Evala dos condiciones y devuelve un valor de verdad slo si ambas son ciertas. Es el "o" lgico. Evala dos condiciones y devuelve un valor de verdar si alguna de las dos es cierta. Negacin lgica. Devuelve el valor contrario de la expresin.

CBTis 4

OPERADORES DE COMPARACIN
Operador < > <> <= >= = BETWEEN LIKE In Menor que Mayor que Distinto de Menor Igual que Mayor Igual que Igual que Utilizado para especificar un intervalo de valores. Utilizado en la comparacin de un modelo Utilizado para especificar registros de una base de datos Uso

FUNCIONES DE AGREGADO Las funciones de agregado se usan dentro de una clusula SELECT en grupos de registros para devolver un nico valor que se aplica a un grupo de registro
Funcin AVG COUNT SUM MAX MIN Descripcin Utilizada para calcular el promedio de los valores de un campo determinado Utilizada para devolver el nmero de registros de la seleccin Utilizada para devolver la suma de todos los valores de un campo determinado Utilizada para devolver el valor ms alto de un campo especificado Utilizada para devolver el valor ms bajo de un campo especificado

SENTENCIAS BSICAS: SENTENCIA CREATE Dentro del Lenguaje de Definicin (DL) del SQL, la sentencia CREATE permiten la definicin o creacin de muchos objetos de la base de datos tales como: tablas (esquemas), ndices, vistas, dominios, ligaduras de integridad y procedimientos. CREATE DATABASE Cuando comenzamos a crear nuestra base de datos en el servidor, el primer paso del montaje es crear la base de datos. Hasta que no creamos la base de datos no podemos comenzar a crear las tablas y dems elementos. La creacin de la base de datos se har una nica vez. Normalmente el proceso de creacin se hace desde el entorno visual del sistema gestor pero no existe ningn inconveniente en hacerlo utilizando comandos SQL. Si lo hacemos desde SQL el comando de creacin es CREATE DATABASE, y su sintaxis: CREATE DATABASE nombre_base_datos

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

La sintaxis de CREATE DATABASE admite muchos ms parmetros aunque normalmente no se utilizan. En los sistemas gestores a la hora de crear nuestra base de datos debemos de estar situados en la base de datos del sistema, en la mayora de los sistemas llamada master. Esto es as porque en ella se introducir la informacin de las propiedades de nuestra base de datos, la que terminamos de crear. CONNECT DATABASE Una vez, cada vez que queramos trabajar con ella tendremos que establecer la conexin entre nuestro cliente de SQL y el servidor de SQL. Este proceso, al igual que el proceso de creacin, se suele realizar desde el interfaz grfico. Normalmente el sistema gestor nos ofrece un men desplegable con todas las bases de datos existentes donde seleccionamos la base de datos con la que vamos a trabajar. El comando SQL equivalente a este proceso es CONNECT, y su sintaxis: CONNECT DATABASE nombre_base_datos Con el comando CONNECT s vamos a encontrar diferencias importantes dependiendo del sistema gestor con el que trabajemos. Por ese motivo normalmente se realiza desde el interface grfico. Para borrar una base de datos, tan sencillo como: DROP DATABASE nombre_base_datos CREATE TABLE Para la creacin de los esquemas o lo que es lo mismo las tablas que contendrn los datos de la base de datos, debemos utilizar la sentencia CREATE TABLE. La sentencia CREATE TABLE, define el nombre de la tabla, las columnas con su tipo de datos, las ligaduras de intengridad que vigilan el valor que se guarde como dato en las columnas o atributos sean llaves o no, su sintaxis es: CREATE TABLE nombre_tabla ( columna1 tipo_dato, columna2 tipo_dato, ... ..., columna tipo_dato, CONSTRAINT cp_nombre_tabla PRIMARY KEY (columna1,...,columnan), [CONSTRAINT cal_nombre_tabla UNIQUE (columna1,...,columanan), [CONSTRAINT caj_nombre_tabla FOREIGN KEY (columna1,...,columnan) REFERENCES tabla] ) Las posibilidades de CREATE TABLE son muchas ms de las mencionadas en la lista anterior pero realmente no son utilizadas. Por defecto, cuando creamos una tabla todos los campos de la tabla admitirn valores nulos. En principio es lo adecuado. Solamente encontraremos problemas con los campos que sean claves primarias o alternativas, puesto que por definicin estos campos siempre tiene que tener valor, nunca pueden estar vacos. Por ello, en estas columnas estaremos obligados a aadirles la opcin NOT NULL, que obliga a que esos campos no admitan valores nulos. Esa opcin tambin tendremos que utilizarla en los campos que sean claves ajenas y estemos obligados a que todos los registros de nuestra tabla estn relacionados a travs de esa clave ajena. La forma de utilizacin es muy sencilla: columna1 tipo_dato NOT NULL, Ahora vamos a conocer los tipos de datos que podemos aplicar a los campos. SQL nos ofrece gran variedad de tipos de datos, aunque como ocurre siempre, nos acostumbramos a utilizar unos pocos y si en alguna ocasin necesitamos plasmar alguna situacin un poco ms especial recurrimos a la ayuda de SQL para ver ms detalladamente otros tipos de datos o nos creamos los nuestros propios. Integer enteros comprendidos entre -231 (-2.147.483.648) y 231 - 1 (2.147.483.647). Smallint enteros comprendidos entre 215 (-32.768) y 215 - 1 (32.767). Tinyint enteros comprendidos 0 y 255. Real flotantes comprendidos entre -3,40E + 38 y 3,40E + 38. Datetime fechas. Char caracteres fijos hasta 8.000. Varchar caracteres variables hasta 8.000. Text caracteres variables hasta 231 - 1 (1.147.483.647).

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

La diferencia entre caracteres fijos (Char) y caracteres variables (Varchar) estriba en que si nosotros hacemos con Char una reserva de memoria de 50 posiciones y al introducir datos solamente utilizamos 20, el resto ser memoria desperdiciada, mientras que si hemos realizado la reserva utilizando Varchar, caracteres variables, si al final solamente utilizamos 20, el resto de memoria ser liberada. Lo ms adecuado es utilizar siempre para caracteres Varchar, utilizando Char solamente en aquellos casos en que sepamos de antemano que siempre se va a consumir todo el espacio reservado, como podran ser campos como los nmeros de telfono, cdigos de texto de tamao fijo, etc. Si en algn momento necesitamos tener un campo entero que sea autonumrico, es decir, que el sistema gestor vaya controlando su valor e incrementndolo o decrementndolo de forma automtica, sin que nosotros tengamos que preocuparnos por ello, tenemos que utilizar la opcin IDENTITY. Esta opcin necesitar dos parmetros, la inicializacin, el valor por el que tiene que comenzar, y el incremento, en el que indicamos el valor de incremento, tanto si es positivo como negativo. Su sintaxis: columna1 integer identity (1,1), Segn el ejemplo anterior, el campo columna1, ser un autoincrementable que comenzar en el valor 1 e ir incrementando de uno en uno. Y como no hay mejor forma de aprender que trabajando un poco, vamos a ver como seran los comandos SQL para la creacin de nuestras tablas de ejemplo. Create table Clientes ( DNI char(9) not null, Nombre varchar(50), Direccion varchar(60), Ciudad varchar(30), CP char(5), Telefonochar(9), constraint cp_Clientes primary key (DNI) ) Fijmonos en la creacin de tabla que acabamos de realizar, y destaquemos algunos detalles. El DNI es la clave primaria, as queda definido en la ltima lnea de la instruccin de creacin de la tabla, adems, a esta clase, se le ha dado el nombre de cp_Clientes, como ya se haba recomendado en el apartado de Convenciones de diseo. Si la clave primaria de nuestra tabla Clientes es el DNI, por definicin este campo nunca podr contener valores nulos, por lo que vamos a tener que indicrselo, indicacin que hacemos, tal como se aprecia en el listado, aadindole al campo la opcin NOT NULL. create table Facturas ( Numero integer identity (1,1) not null, Fecha datetime, Total real, DNI char(9), constraint cp_Facturas primary key (Numero), constraint caj_Facturas foreign key (DNI) references Clientes ) En la creacin de la tabla Facturas nos encontramos con el comando IDENTITY, que indica que el nmero de factura se ir generando automticamente comenzando por el nmero de factura 1 y creciendo de uno en uno. Tambin nos encontramos la definicin de una clave ajena, el campo DNI ser una clave ajena qe relacione una factura con un cliente. create table Articulos ( Codigo integer not null, Nombre varchar(40), PrecioCompra real, IVA real, constraint cp_Articulos primary key (Codigo) )

ING. HUMBERTO DE LA ROSA G.

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

create table LineasFactura ( Numero integer identity(1,1) not null, Factura integer not null, Cantidadinteger, Articulointeger not null, Precio real, Total real, constraint cp_LineasFactura primary key (Numero), constraint caj_LineasFactura1 foreing key(Factura) references Facturas, constraint caj_LineasFactura2 foreing key(Articulo) references Articulos ) Aqu nos encontramos con la existencia de dos claves ajenas, como podemos ver sus nombres son el mismo solamente que numerados para que no haya error. Adems a los campos de estas dos claves ajenas se les ha asignado la caracterstica de no poder tomar valores nulos. Por lo tanto, siempre que exista una lnea de factura sta va a tener que pertenecer a una factura y ser de la venta de un artculo, no pueden existir lneas de factura que no cumplan estas condiciones. En realidad el comando CONSTRAINT no es de obligado cumplimiento, podramos definir claves, tanto ajenas como primarias sin la necesidad de utilizar CONSTRAINT pero no podramos darles un nombre a dichas claves. En siguientes apartados veremos que inconveniente se nos plantea si tomamos la determinacin de no dar nombre a nuestras claves. INSERCCIN, MODIFICACIN Y BORRADO DE DATOS (INSERT,UPDATE,DELETE) Una vez creadas las tablas podemos comenzar a trabajar con los datos, insertando, modificando y borrando datos. A continuacin la sintaxis de cada uno de los procesos respectivamente: INSERT INTO tabla [(columna1,...,columnan)] VALUES (valor1,...,valorn) UPDATE tabla SET columna1=valor1,...,columnan=valorn WHERE condicion DELETE FROM tabla WHERE condicion Bueno, esta sintaxis parece ms sencilla que la vista en el apartado anterior. El comando INSERT no tiene ningn secreto, es muy sencilla su forma. Donde podemos encontrar algn problema es con la actualizacin y el borrado, problema en el sentido de entender y a posteriori determinar correctamente la condicin de la clusula WHERE. Las filas de la tabla que cumplan la condicin de la clusula where ser las filas que sufran la actualizacin o el borrado dependiendo del comando utilizado. Vamos a unos ejemplos. Insert into Clientes (DNI,Nombre,Direccion,Ciudad,CP,Telefono) values (21547789,Agapito Lafuente Corral,c./La plaza nueva,Alicante,03005,987785655) Insert into Clientes (12456445,Maria del mar Sanchez Juan,c./La marina,Madrid,25455,887452114) En la segunda insercin se me ha olvidado poner los nombres de los campos de la tabla, pero no es incorrecto. Si cuando realizamos una insercin sta afecta a todos los campos de la tabla no es necesario que indiquemos los nombre de los mismos, solamente es necesario cuando vayamos a realizar inserciones en las que algunos campos del nuevo registro no vayamos a rellenarlos, es este caso esos campos en blanco quedarn definidos con el valor NULL. Aqu hay que hacer una pequea llamada de atencin. Podemos perfectamente hacer inserciones que solamente afectan a un subconjunto de los campos de un registro y el resto dejarlo en blanco, pero tenemos que tener la precaucin de nunca dejar en blanco ningn campo que hayamos definido como NOT NULL, nos dara un error y no realizara la insercin. /* Actualiza la direccin y el CP del cliente con DNI 21547789 */ Update Clientes set Direccion=Plaza Mayor, CP=66789 where DNI=21547789 /*Borra el cliente con DNI 12456445 */ Delete from Clientes where DNI=12456445 /* Borra todos los clientes de los que no tengamos nombre */ Delete from Clientes where Nombre is NULL

ING. HUMBERTO DE LA ROSA G.

10

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Como podemos apreciar en los ejemplo de los borrados y actualizaciones, utilizar estos procedimientos no tiene, al igual que las inserciones, una gran complicacin. El pequeo problema, en los dos primeros, estriba en la clusula WHERE. Los ejemplos mostrados nos ensean como utilizar WHERE en sus posibilidades ms sencillas, obviamente, podramos generar condiciones de borrado y actualizacin algo ms complejas. Dejo para el artculo del prximo nmero de la revista Sntesis el abordar casusticas ms complejas de la clusula, donde conoceremos con detalle toda su potencia. No obstante voy a citar, junto con algn ejemplo ms, algunos de los operadores que podemos utilizar en ella: AND Es el y lgico. OR Es el o lgico. NOT Es el negador lgico. <, >, <=, >=, =, <> Son los comparadores. BETWEEN Especifica un intervalo de valores. LIKE Compara con un modelo. Ver tabla apartado Creacin de reglas para datos. IN Compara con una lista de datos.

/* Borra todas las facturas emitidas antes del 1/1/2000 */ Delete from Facturas where fecha < 1/1/2000 /* Actualiza el valor del descuento al 25% a todos los clientes cuya ltima compra est entre 200000 y 300000 pesetas */ Update Cliente set descuento=25 where total_ultima_compra between 200000 and 300000 /* Borra todos los articulos cuyo cdigo comienza por 210 */ Delete from Articulos where codigo like 210% MODIFICAR Y BORRAR UNA TABLA (ALTER TABLE, DROP TABLE) Si necesitamos borrar una tabla, situacin que se da en raras ocasiones, el comando es: DROP TABLE nombre_tabla Con todo el trabajo que lleva crear una tabla y lo fcil que es borrarla. Hay que llevar cierta precaucin si la tabla se encuentra relacionada con otras tablas. Y ahora, para el borrado de la tabla, vamos a continuar con nuestra lnea normal, ALTER TABLE. ALTER TABLE, sirve para realizar modificaciones de definicin sobre las tablas ya generadas, modificaciones aadiendo o eliminando campos o claves. Su sintaxis: ALTER TABLE tabla {ADD {COLUMN tipo de campo[(tamao)] [CONSTRAINT indice] CONSTRAINT indice multicampo} | DROP {COLUMN campo CONSTRAINT nombre del indice} } Unos ejemplos: /* Agrega un campo Comentario a la tabla Clientes */ Alter table Clientes add column Comentario varchar(255) /* Elimina el campo IVA de la tabla Articulos */ Alter table Articulos drop column IVA /* Aade un campo CIF a la tabla Articulos y despus lo convierte en clave ajena para relacionar cada artculo con el proveedor que lo suministra. El CIF es el identificador de un proveedor */ Alter table Articulos add column CIF char(9) Alter table Articulos add constraint caj_Articulos foreing key (CIF) references Proveedores /* Aunque no tenga sentido, borraremos la clave ajena de la tabla LineasFactura a la tabla Factura */ Alter table LineasFactura drop constraint caj_LineasFactura1 En el apartado donde hemos explicado como se crean las tablas se ha comentado que cuando se genera una clave, bien sea ajena, primaria o alternativa, el comando CONSTRAINT no es obligatorio incluirlo aunque si recomendable, ahora podemos darnos cuenta del por qu. Si no utilizamos CONSTRAINT no podremos poner un nombre a la nueva clave generada, si la clave no dispone de nombre despus no podremos tratarla con otros comandos como son los vistos en este apartado. No cuesta nada, al generar las claves, otorgarles un nombre, y podemos evitar problemas ms adelante.

ING. HUMBERTO DE LA ROSA G.

11

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

CONSULTAS DE SELECCIN Las consultas de seleccin se utilizan para indicar al motor de datos que devuelva informacin de las bases de datos, esta informacin es devuelta en forma de conjunto de registros que se pueden almacenar en un objeto recordset. Este conjunto de registros es modificable. CONSULTAS BSICAS La sintaxis bsica de una consulta de seleccin es la siguiente: SELECT Campos FROM Tabla; En donde campos es la lista de campos que se deseen recuperar y tabla es el origen de los mismos, por ejemplo: SELECT Nombre, Telefono FROM Clientes; Esta consulta devuelve un recordset con el campo nombre y telfono de la tabla clientes. ORDENAR LOS REGISTROS Adicionalmente se puede especificar el orden en que se desean recuperar los registros de las tablas mediante la clasula ORDER BY Lista de Campos. En donde Lista de campos representa los campos a ordenar. Ejemplo: SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY Nombre; Esta consulta devuelve los campos CodigoPostal, Nombre, Telefono de la tabla Clientes ordenados por el campo Nombre. Se pueden ordenar los registros por mas de un campo, como por ejemplo: SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY CodigoPostal, Nombre; Incluso se puede especificar el orden de los registros: ascendente mediante la clasula ( ASC -se toma este valor por defecto) descendente ( DESC ) SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY CodigoPostal DESC , Nombre ASC ; CONSULTAS DE PREDICADO El predicado se incluye entre la clasula y el primer nombre del campo a recuperar, los posibles predicados son:
Predicado ALL TOP DISTINCT DISTINCTROW Devuelve todos los campos de la tabla. Devuelve un determinado nmero de registros de la tabla. Omite los registros cuyos campos seleccionados coincidan totalmente. Omite los registros duplicados basandose en la totalidad del registro y no slo en los campos seleccionados. Descripcin

ALL Si no se incluye ninguno de los predicados se asume ALL. El Motor de base de datos selecciona todos los registros que cumplen las condiciones de la instruccin SQL. No se conveniente abusar de este predicado ya que obligamos al motor de la base de datos a analizar la estructura de la tabla para averiguar los campos que contiene, es mucho ms rpido indicar el listado de campos deseados. SELECT ALL FROM Empleados; SELECT * FROM Empleados; TOP Devuelve un cierto nmero de registros que entran entre al principio o al final de un rango especificado por una clusula ORDER BY. Supongamos que queremos recuperar los nombres de los 25 primeros estudiantes del curso 1994: SELECT TOP 25 Nombre, Apellido FROM Estudiantes ORDER BY Nota DESC ; Si no se incluye la clusula ORDER BY, la consulta devolver un conjunto arbitrario de 25 registros de la tabla Estudiantes .El predicado TOP no elige entre valores iguales. En el ejemplo anterior, si la nota media nmero 25 y la 26 son iguales, la consulta devolver 26 registros. Se puede utilizar la palabra reservada PERCENT para devolver un cierto porcentaje de

ING. HUMBERTO DE LA ROSA G.

12

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

registros que caen al principio o al final de un rango especificado por la clusula ORDER BY. Supongamos que en lugar de los 25 primeros estudiantes deseamos el 10 por ciento del curso: SELECT TOP 10 PERCENT Nombre, Apellido FROM Estudiantes ORDER BY Nota DESC ; El valor que va a continuacin de TOP debe ser un Integer sin signo.TOP no afecta a la posible actualizacin de la consulta. DISTINCT Omite los registros que contienen datos duplicados en los campos seleccionados. Para que los valores de cada campo listado en la instruccin SELECT se incluyan en la consulta deben ser nicos. Por ejemplo, varios empleados listados en la tabla Empleados pueden tener el mismo apellido. Si dos registros contienen Lpez en el campo Apellido, la siguiente instruccin SQL devuelve un nico registro: SELECT DISTINCT Apellido FROM Empleados; Con otras palabras el predicado DISTINCT devuelve aquellos registros cuyos campos indicados en la clusula SELECT posean un contenido diferente. El resultado de una consulta que utiliza DISTINCT no es actualizable y no refleja los cambios subsiguientes realizados por otros usuarios. DISTINCTROW Devuelve los registros diferentes de una tabla; a diferencia del predicado anterior que slo se fijaba en el contenido de los campos seleccionados, ste lo hace en el contenido del registro completo Independientemente de los campos indicados en la clusula SELECT. SELECT DISTINCTROW Apellido FROM Empleados; Si la tabla empleados contiene dos registros: Antonio Lpez y Marta Lpez el ejemplo del predicado DISTINCT devuleve un nico registro con el valor Lpez en el campo Apellido ya que busca no duplicados en dicho campo. Este ltimo ejemplo devuelve dos registros con el valor Lpez en el apellido ya que se buscan no duplicados en el registro completo. ALIAS En determinadas circunstancias es necesario asignar un nombre a alguna columna determinada de un conjunto devuelto, otras veces por simple capricho o por otras circunstancias. Para resolver todas ellas tenemos la palabra reservada AS que se encarga de asignar el nombre que deseamos a la columna deseada. Tomado como referencia el ejemplo anterior podemos hacer que la columna devuelta por la consulta, en lugar de llamarse apellido (igual que el campo devuelto) se llame Empleado. En este caso procederamos de la siguiente forma: SELECT DISTINCTROW Apellido AS Empleado FROM Empleados;

2. MANEJO DE SOFTWARE PARA ADMINISTRACIN DE INFORMACIN DE LAS BASES DE DATOS. PROGRAMAS PARA LA ADMINISTRACIN DE LAS BASES DE DATOS
Los programas de bases de datos organizan y almacenan los datos de manera tal que las tablas estn indexadas y se pueden contestar preguntas. Estas herramientas estn disponibles en un nmero de configuraciones diferentes y escalables para ser usadas por un individuo o una corporacin global. Algunos son fciles de usar, con bases de datos a manera de interfaz visual, mientras que otras, al final del espectro empresarial, requieren entrenamiento y herramientas especializadas para ser tiles. Access Access es un sistema de base de datos personal de Microsoft. Se trata de un producto de software orientado hacia lo visual, lo que hace que quienes no sean programadores puedan crear bases de datos tiles con facilidad. Si bien la estructura de base de datos Access puede ampliarse para satisfacer las necesidades empresariales, el uso ms comn de esta base de datos es para pequeas bases de datos individuales o en programas multiusuario de uso limitado. Access integra el lenguaje Visual Basic para aplicaciones, por lo que es un entorno de desarrollo completo.

ING. HUMBERTO DE LA ROSA G.

13

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Visual FoxPro FoxPro es un sistema de base de datos relacional, tambin producido por Microsoft, que est estrechamente unido a su lenguaje de programacin. FoxPro es menos amigable que las bases de datos de usuario final, lo que requiere ms conocimientos tcnicos que Access. Este sistema de base de datos es conocido por su motor de procesamiento rpido y la capacidad de manejar numerosas transacciones simultneas. MySQL Database MySQL es una base de datos basada en servidor que permite a varios usuarios acceder a mltiples bases de datos. El software funciona en mltiples plataformas, incluyendo la mayora de las variedades de UNIX y Windows. Ofrece usabilidad de primer plano limitada y est diseado como un servidor de base de datos back-end. MySQL se diferencia de otros productos de base de datos por sus costos, la versin no empresarial se distribuye de forma gratuita. SQL Server SQL Server es un servidor de base de datos a nivel empresarial escalable. Este producto se diferencia de la base de datos personal al no proporcionar las herramientas para el usuario que proporciona un producto de base de datos individual. El motor de base de datos se centra en responder rpidamente a las solicitudes del cliente en el formulario de consultas SQL. Estas consultas se pueden generar directamente en SQL Server, o por medio de una interfaz de usuario independiente desarrollada en una variedad de lenguajes de programacin. SQL Server est diseado para manejar bases de datos con millones de registros. Oracle La base de datos Oracle es otra base de datos escalable a nivel empresarial. La base de datos de SQL soporta bases de datos corporativos distribuidos, que permiten al usuario acceder a los datos de forma local o desde bases de datos remotas en una transaccin transparente. Las bases de datos distribuidas ayudan a superar las limitaciones fsicas de un entorno informtico fsico. El tamao mximo de base de datos para una base de datos Oracle es de 8 millones de terabytes, lo que requiere un almacenamiento fsico ms all de la capacidad de la mayora de las instalaciones individuales.

ING. HUMBERTO DE LA ROSA G.

14

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

PRCTICA N1: INSTALACIN Y ENTORNO DEL SQL SERVER DGGNL001.DOC

1. El Facilitador, realiza una instalacin del Software MS SQL Server 2008 y explica paso a paso el procedimiento de instalacin y configuracin. 2. Crea un archivo nuevo de Word con el nombre DGGNL001.DOC, que incluya datos del alumno como se especific con anteioridad:
1. 2. 3. 4. Nombre de la escuela. Nombre del alumno, nl, gpo, especialidad. Nombre y nmero de la prctica. Nombre del facilitador.

3. Los alumnos elaboran un reporte que detalle, explica e incluya imgenes de pantalla del procedimiento expuesto por el facilitador, para ello deber contener los siguientes conceptos: 1. 2. 3. 4. 5. 6. 7. 8. Conceptos de MS SQL Server. Caractersticas de SQL Server. Diferencias entre las ediciones: Enterprise, Standard, Workgroup, Developer y Express. Requerimientos de Hardware. Requerimientos de Software. Pantallas de la instalacin. Opciones de configuracin. Otras versiones comerciales de SQL.

4. Al final, guarde tu archivo DGGNL001.DOC y suba al servidor de red para efectos de evaluacin.

ING. HUMBERTO DE LA ROSA G.

15

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

PRCTICA N2: CLIENTES SQL SERVER: MANAGEMENT STUDIO y SQLDBX DGGNL002.DOC

1. El Facilitador, realiza explicacn sobre el manejo de los Softwares clientes de SQL: Microsoft SQL Server 2008 management Studio y SQLDBX, explica el manejo de este par de aplicaciones, funcionaldad, ventajas y desventajas. 2. Crea un archivo nuevo de Word con el nombre DGGNL002.DOC, que incluya datos del alumno como se especific anteiormente. 3. El reporte debe contener los siguientes conceptos: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Descripcin de Microsoft SQL Server Management Studio. Caractersticas del Management Studio. Utilida y funcionamiento. Requerimientos de Hardware y Software. Pantallas de la instalacin. Descripcin de SQLDBX. Caractersticas de SqlDbx. Soporte DBMS. Utilidad y funcionamiento. Requerimientos de Hardware y Software. Pantallas de la aplicacin.

4. Al final, guarde tu archivo DGGNL002.DOC y suba al servidor de red para efectos de evaluacin. CUESTIONARIO DE COMPLEMENTO (Actividad individual): 1. 2. 3. Describa caractersticas y diferencias de los SGBD MS Access y SQL Server. Describa caractersticas y diferencias de los SGBD SQL Server y MySQL. Diferencias entre los tipos de datos Char y VChar

ING. HUMBERTO DE LA ROSA G.

16

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

PRCTICA N3: SQL CREACIN DE TABLAS CON LENGUAJE DE CONSULTAS SQL DGGNL003.SQL 1. Iniciar el SGBD (Microsoft SQL Server Management Studio SqlDbx), previamente debes tener una cuenta de acceso como usuario del motor de BD asignada por los administradores del SQL Server en este caso utilizar los siguientes datos: DBMS Type: Server: Database: User: Password: Microsoft SQL Server SRV2008\SQLEXP2005 DGGNL G11S02 sql

2. En tu unidad de disco duro local, crea tu carpeta personal: D:\ALUMNOS\GPOx\MODULO2\DGGNL\. 3. CREAR BASE DE DATOS SQL: Como se mencion en el punto 1, debes conectarte con el servidor SQL con una cuenta vlida si lo haces en SQLDdx debes definir una Base de datos, solo la primera vez debes utilizar la Database: DGGNL que es un nombre de base de datos genrico y existente, por lo que no sustituyes ningn carcter por tus datos personales y solo es para accesar la primera vez, una vez conectado debers crear tu propia Base de Datos la misma a utilizar en todas tus prcticas, en este 2 caso: DGGNL (si debes sustituir GG por tu nmero de Grupo y NL por tu nmero de lista), con esto se generar el archivo del tipo MDF, ahora creada tu Database, cierra SQLDbx y reincialo de nuevo, pero ahora en Database debes eligir la base de datos personalizada recien creada, observa que una vez abierto el SGBD en la barra de estado indique tu base de datos especifica y ya no debes utilizar la database generica.

4. Recuerda que conectado al SGBD como tarea inicial debes activar la Base de datos, esto mediante la instruccin: 5. Ahora crea una nueva consulta con el nombre DGGNL003.SQL en esta debes escribir el script o texto que debers ejecutar por parcialidades para comprobar el funcionamiento correcto de la etapa, en la ruta de trabajo indicada en el punto anterior, en primer caso pulsa de la barra de herramientas la opcin NEW QUERY (Nueva consulta), con ello en la ventana de trabajo de Management Studio te desplegar una nueva ficha del tipo SQLQuery.sql, en ella debes escribir las instrucciones que se te indiquen. 6. CREAR TABLA: Selecciona el bloque de texto iniciando con la lnea CREATE TABLE y terminando con el parntesis de cierre), ejecuta este bloque de texto, si esto es correcto y libre de errores, el panel de mensajes te indicar que se cre la tabla, pulsa actualizar en el rbol en los objetos Tabla, tal como se indica a continuacin:

7. Despus de capturarlo correctamente aplique de la cinta de opciones la ficha: Herramientas de consulta: Ejecutar ! , guarde la consulta DGGNL003.SQL y djela abierta para efectos de comparacin, as mismo verifique en el panel de navegacin su tabla recin creada exista. 1. AADIR REGISTRO: Ahora debes escribir correctamente el bloque de cdigo que inicia con la instruccin INSERT INTO EMPLEADOSNL y concluye en SELECT * FROM EMPLEADOSNL, la primera lnea define donde se insertarn l os

ING. HUMBERTO DE LA ROSA G.

17

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

registros y en que campos (los campos deben ser en misma cantidad que los datos a ingresar), la segunda lnea define que datos se ingresan y la tercer lnea indica el despliega el contenido de nuestra tabla, para ello debes teclear y luego ejecutar la siguientes rdenes:

NOTA IMPORTANTE: Siempre capturar el primer registro con datos personales por ejemplo tu nombre e iniciando con apellidos, adems escribir siempre todos los datos en MAYUSCULAS. 8. Selecciona de tu archivo de consulta (*.SQL) el bloque de texto con las ltimas instrucciones y aplique en la ficha: Herramientas de consulta: Ejecutar ! y verifique que la tabla EMPLEADOSNL presente un registro de contenido, ingresado mediante SQL (Lenguaje estructurado de consultas), guarde esta consulta DGGNL003.SQL. 9. Repitiendo la orden INSERT INTO agregue 5 registros ms a la tabla en cuestin, de tal manera que el contenido adicional sea el siguiente:

10. COMENTARIOS: Todos los archivos de script debern incluirlas, al inicio del archivo de script (SQL), las lneas de comentario correspondientes a este ejercicio son:
// CENTRO DE BACHILLERATO TECNOLGICO INDUSTRIAL Y DE SERVICIOS NO 4 // MDULO 2 // SUBMDULO 2: DISEA Y ADMINISTRA BASES DE DATOS AVANZADAS. // NOMBRE DEL ALUMNO, GPO NL // EJERCICIO DGGNL003.SQL

11. Por ltimo guarda tu archivo script o consulta DGGNL003.SQL, conteniendo todas las instrucciones de la consulta en cuestin en tu ruta de trabajo local o carpeta personal y despus sbelo al servidor de red acadmica para efectos de evaluacin, la BD conteniendo tabla con los registros ingresados ya se ubica en el Servidor SQL, por ltimo, cierra correctamente el SGBD. PRCTICA N4: CONSULTAS SQL POR CRITERIOS DIVERSOS DGGNL004.SQL 1. Abre tu carpeta personal: D:\ALUMNOS\GPOx\MODULO2\DGGNL\. 2. Recupera de la carpeta Rec_ Acade del servidor de red en Mdulo2 de la carpeta PractSub02, el script: BD004.SQL. a tu carpeta local. 3. ACTIVAR LA BASE DE DATOS: Al acceder al motor de base de datos, debes verificar la Base de datos DGGNL se encuentre activa, para ello debes utilizar la instruccin: USE (nombre de la database) y la ejecutas del mismo modo que que la instruccin anterior, debemos utilizar la base de datos DGGNL ( recuerda sustituir GG y NL por tus datos personales ya que no debemos utilizar la base de datos generica). 4. NUEVA CONSULTA: Si no aparece la ventana de nueva consulta genera una y nmbrala DGGNL004.SQL, donde escribirs las lneas de cdigo de instrucciones para la realizacin de este ejercicio, en la ruta de trabajo indicada en el primer punto. 5. Ejecutar BD004.SQL recuperado anteriormente por las parcialidades correspondientes para generar la tabla DGGNL004 y abrla y verifica en el Explorador de objetos de Management Studio SQL Server despliegue los datos. 6. En el panel de edicin de consultas escribe la 1 instruccin y luego ejectala, observa la informacin desplegada y repite lo mismo con las siguientes rdenes.

ING. HUMBERTO DE LA ROSA G.

18

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

7. Aplique Ejecutar, analice y registre observaciones de los resultados obtenidos, guarde nuevamente la consulta. 8. Agregue las lneas de consulta siguientes:

9. Nuevamente Ejecute, analice y registre observaciones de los resultados obtenidos, guarde nuevamente la consulta. 10. Registre sus observaciones en la siguiente tabla: CONSULTA 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. CARACTERISTICAS DE LA INFORMACIN DESPLEGADA

11. Agregue al archivo de script las lneas de comentarios indicadas en el ejercicio anterior. 12. Por ltimo, guarde el archivo de script DGGNL004.SQL adems genera un archivo con nombre DGGNL004.DOC que contenga la tabla de observaciones de los resultados de las consultas y sbelos al servidor de red para efectos de evaluacin, por ltimo, cierra correctamente el SGBD. ACT 2. ACTIVIDAD EN PLATAFORMA: INVESTIGACIN Y EXPOSICIN: CONCEPTOS, CARACTERSTICAS Y APLICACIONES DEL SQL. Los alumnos integrados en equipos de 5, realizan el diseo y exposicin de una presentacin electrnica en Power Point con nombre: (DGGNL_XX.PPT), de uno de los temas abajo especificados y previamente asigandos por el Facilitador, debiendo contener: Portada con datos del tema y alumnos participantes por nmero de lista, Desarrollo (tpicos detallados en la relacin) y Conclusiones de equipo, la diapositiva de desarrollo deber contener los siguientes elementos relacionados a continuacin: CONCEPTOS, CARACTERSTICAS Y APLICACIONES DEL SQL 1. SQL Server. 2. SQL Server Management Studio. 3. SQLDbx. 4. MySQL. 5. DDL (Data Description Language). 6. DCL (Data Control Language). 7. DML (Data Manipulation Language). 8. Transact-SQL. 9. Funciones: Count, Min, Max, Sum, Avg, Grpup by, Insert into, Update, Delete, Truncate. 10. Ejemplo de aplicacin de SQL.

ING. HUMBERTO DE LA ROSA G.

19

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Que deber subir cada representante de equipo a plataforma, la ltima diapositiva, incluir conclusiones de equipo, subir documento electrnico a plataforma acadmica, aplicando especificaciones previamente descritas para efectos de evaluacin. PRCTICA N5: TABLAS EDICIN Y ADICIN DE REGISTROS CON SQL DGGNL005.SQL 1. Abre tu carpeta personal: D:\ALUMNOS\GPOx\MODULO2\DGGNL\, e inicia el SGBD la BD. 2. ACTIVAR LA BASE DE DATOS: Al acceder al motor de base de datos, debes verificar la Base de datos DGGNL se encuentre activa. 3. NUEVA CONSULTA: Si no aparece la ventana de nueva consulta genera una y nmbrala DGGNL005.SQL, donde escribirs las lneas de cdigo de instrucciones, en la ruta de trabajo indicada en el primer punto, para la realizacin de este ejercicio. 4. CREACION DE TABLAS: crea la tabla con el nombre DGGNL005, debers escribir el siguiente conunto de ordenes correctamente:

5. Una vez escrito el conjunto de instrucciones, pulsa el boton: Ejecutar !, observa en el explorador de objetos con lenguaje SQL (Lenguaje de consultas estructurado) y desde la ventana consulta has creado la tabla: DGGNL005, guarda la consulta. 6. MODIFICAR TABLAS: En la ventana editor de consulta escriba cada uno de los bloques con las siguientes rdenes y posteriormente ejecute cada uno:

7. INGRESAR UN REGISTRO: aplica Crear+Diseo de consulta, te despliega el cuadro mostrar tabla, agrega LIBROSNL y cierra el cuadro de dilogo, cambia a vista SQL, escribe el siguiente conjunto de rdenes:

8. Verifica que se ha aadido un registro a tu tabla DGGNL005, guarda nuevamente tu consulta. 9. AADIR REGISTROS: tal como se hizo en el ejercicio anterior agrega 9 registros ms a tu tabla y verifica los mismos. 10. Te indicar que se han aadido 9 nuevas filas a tu tabla guarda nuevamenteb tu consulta y verifica tengas 10 registros en tu tabla de trabajo.

11. CONSULTA DEFINIDA POR USUARIO: Escribe una a una las siguientes instrucciones, ejectalas y compara las mismas haz observaciones y registra resultados de las diferencias entre ambas:

12. Por ltimo, guarde el archivo de script DGGNL005.SQL y sbelo al servidor de red para efectos de evaluacin, por ltimo, cierra correctamente el SGBD.

ING. HUMBERTO DE LA ROSA G.

20

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Una sentencia vlida se construye siguiendo la por la palabra SELECT, despus puedes poner ALL o bien DISTINCT o nada, a continuacin un nombre de columna, o varios separados por comas, a continuacin la palabra FROM y una expresintabla, y por ltimo de forma opcional puedes incluir la clusula WHERE con una condicin-de-bsqueda. Por ejemplo: SELECT col1,col2,col3 FROM mitabla SELECT col1,col2,col3 FROM mitabla SELECT DISTINCT col1 FROM mitabla SELECT col1,col2 FROM mitabla WHERE col2 = 0 Todas estas sentencias se podran escribir y no daran lugar a errores sintcticos. Cuando una palabra opcional est subrayada, esto indica que ese es el valor por defecto (el valor que se asume si no se pone nada). En el ejemplo anterior las dos primeras sentencias son equivalentes (en el diagrama ALL aparece subrayada). ACT 3. ACTIVIDAD EN PLATAFORMA: ACTIVIDAD DE EMPAREJAMIENTO CONCEPTOS AVANZADOS DE SQL. Los alumnos resuelven individualmente la actividad de relacionar columnas o emaprejamiento correctamente y propuesta en la liga: http://cursos.cbtis4.edu.mx/file.php/93/interactivos/Ac11_S02Un03.htm/ En un tiempo no mayor de 15 min. correctamente, al finalizar debe pulsar una sola vez el botn Comprobar para generar el resultado con las respuestas correctas, para no ser penalizado, as mismo una vez resuelta la actividad con el resultado visible, no cerrar la pantalla con el resultado, ya que debes capturar la pantalla con la calificacin legible, cuando se despliegue el resultado obtenido (pulse las teclas Alt+Impr pantalla), misma que es el registro o evidencia de resolucin del mismo. Para ello, debe elaborar individualmente un documento de Word con el nombre (DGGNL_XX.DOC), en el que debes pegar la imagen previamente capturada del Emarejamiento, as mismo liste y definacon mayor amplitud cada uno de los trminos correctos de la actividad, por ltimo, no olvide anotar conclusiones personales al final de su documento a subir en plataforma acadmica. PRCTICA N6: CREACIN TABLAS SIMPLE EN MS SQL SERVER DGGNL006.SQL 1. Inicia el SGBD (Management Studio SqlDbx), con una cuenta de acceso como usuario previamente asignada. 2. Abre tu carpeta personal: D:\ALUMNOS\GPOx\MODULO2\DGGNL\. 3. CREAR BASE DE DATOS SQL: Debes conectarte con el servidor SQL que el Facilitador te indic oportunamente, una vez conectado debers utilizar tu Base de Datos personal de la prctica en este caso: DGGNL, en ella debes agregar una nueva consulta con el mismo nombre DGGNL006.SQL en esta debes escribir el script o texto que debers ejecutar por parcialidades en la ruta de trabajo indicada en el punto anterior, en primer caso pulsa de la barra de herramientas la opcin NEW QUERY (Nueva consulta), con ello en la ventana de trabajo de Management Studio te desplegara una nueva ficha del tipo SQLQuery.sql, en ella debes escribir la siguiente instrucciones:

ING. HUMBERTO DE LA ROSA G.

21

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

Una vez escrita la orden SQL, (verificar sintaxis de la orden sea correcta), debes pulsar en la Barra de herramientas la opcin Execute o el smbolo ! (admiracin) para ejecutar la instruccin y con ello se activar la Base de datos, realizado esto, la ventana de mensajes debe indicarte que el comando se complet satisfactoriamente, luego selecciona Databases en el Panel Explorador de objetos (object Explorer) , pulsa 2 click para abrir, refrescar (Refreh) y actualizar tu informacin con ello tambin abre el esquema de rbol de Databases, debiendo existir el objeto DGGNL recin creado, recuerda que despues de cada segmento de instrucciones debes ejecutar el script, y siempre debes verificar que la instruccin se complete satisfactoriamente. 4. CREAR LA TABLA: Guarda la consulta (Query) con nombre DGGNL006.SQL, donde insertaste la orden anterior para crear la Base de datos, en tu ruta local de trabajo : D:\GPOx\DGGNL previamente creada escribe el cdigo que se te presenta ms abajo, ahora escribe las siguientes rdenes SQL para crear nuestra Tabla por la siguiente:

5. INGRESAR REGISTROS UNO POR A LA TABLA: Ahora debes escribir correctamente el bloque de cdigo que inicia con la instruccin INSERT INTO DGGNL006 y concluye en SELECT * FROM DGGNL006, la primera parte de la instruccin permite insertar registro por registro y la segunda desplegar el contenido de nuestra tabla, para ello debes teclear y luego ejecutar la siguientes rdenes:

6. VISUALIZAR EL CONTENIDO: como se indic en los pasos anteriores, la orden: SELECT * FROM DGGNL006, desplegar en filas y columnas el registro creado en la tabla generada en SQL Server, si todo lo realizado hasta ahora es correcto debers ver tu informacin como el cuadro que se incluye abajo:

7. INGRESAR MLTIPLES REGISTROS: Para ello debes teclear el siguiente conjunto de instrucciones sin error:

ING. HUMBERTO DE LA ROSA G.

22

PROGRAMACIN: DISEA Y ADMINISTRA BD

CBTis 4

8. La ltima instruccin del bloque permite visualizar los registros adicionados como se observa a continuacin:

9. Incluir las lneas de comentario referidas en todos los archivos de script, al inicio de todas las instrucciones de tu consulta o archivo SQL. 10. Guarda tu archivo script o consulta DGGNL006.SQL en tu ruta de trabajo local o carpeta personal y despus sbelo al servidor de red acadmica para efectos de evaluacin, la BD conteniendo tu tabla y registros especificados, ya se ubican en el Servidor SQL, por ltimo, cierra correctamente el SGBD.

ING. HUMBERTO DE LA ROSA G.

23

S-ar putea să vă placă și