L
a creación del ambiente de aprendizaje en asignaturas de bases de datos principalmente para la realización de prácticas de laboratorio, nos lleva a construir bases de datos quesean de forma general un ejemplo de las sentencias y desarrollo de sintaxis en los lenguajes de manipulación y consulta de datos de los sistemas de gestión de base de datos (SGBD). Además de permitir la reafirmación de conocimientos adquiridos en asignaturas antecesoras de esta permiten al alumno adquirir un aprendizaje significativo que les permite incrementar su conocimiento profundizando en un determinado SGBD. Es por ello que la presente práctica pretende que el alumno cree su propio ambiente de aprendizaje que le permita practicar sus conocimientos previos y adquirir nuevo aprendizaje en esta asignatura.
El alumno practicará los conocimientos adquiridos en asignaturas antecedentes en la creación de bases de datos y tablas en Microsoft SQL Server 2005.
1. Ingrese a Microsoft Microsoft SQL Server2005 Server2005 y cree una una base de de datos de nombre: nombre: SistEduc. 2. Genere las siguientes tablas tablas dentro de su base base de datos: Tabla Escuela Idescuela Numerico Nombreesc Texto Telefono Entero Nombreresponsable Nombreresponsable Texto Totalmatricula Numero Idcarrera Numero Idmatricula Numero idzona numero
Tabla zona Idzona Numero Nombre_zona Texto CodPostal Numero Clave_zona texto
Tabla Matricula idmatricula 12
grado quinto
Totalmatricula 456
Carrera idcarrera 156
Nombre_carrera Lic. Informática
Clave INF12006
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Copie el siguiente código fuente para crear la base de datos: CREATE DATABASE SistEduc ON PRIMARY ( NAME = SistEduc _data, NAME= _data, FILENAME ='C:\BDD\grupo6601.mdf' 'C:\BDD\grupo6601.mdf', , SIZE= SIZE =50MB, 50MB, MAXSIZE= MAXSIZE =70MB, 70MB , FILEGROWTH =1MB ) LOG ON ( NAME= NAME = SistEduc _log, _log, FILENAME ='C:\BDD\grupo6601.ldf' 'C:\BDD\grupo6601.ldf', , SIZE= SIZE =15MB, 15MB, MAXSIZE= MAXSIZE =20MB, 20MB , FILEGROWTH =1MB ) GO
Copie el siguiente código fuente para crear cr ear las tablas: create table Escuela (idescuela smallint IDENTITY primary key , NomEscuela varchar (25), 25), Telefono int, int , NomResponsable Varchar (25), 25), Totalmatric int int, , idCarrera smallint , idMatricula int int, , idZona int, int , constraint fk_carreraesc foreign key (idCarrera) idCarrera) references Carrera (idCarrera), idCarrera), constraint fk_matriculaesc foreign key (idMatricula) idMatricula) references Matricula (idMatricula), idMatricula), constraint fk_zonaesc foreign key (idZona) idZona) references Zona (idZona)) idZona)) use SistEduc create table Matricula( Matricula (idMatricula int primary key not null, grado varchar( varchar (10), 10), TotalMatricula int int) ) Create table Zona( Zona(idZona int primary key not null, Nombre_zona varchar( varchar (10), 10), Cod_postal int, int , Clave_zona varchar( varchar (10)) 10)) Create Table Carrera( Carrera(idCarrera smallint primary key not null, nombreCarrera varchar varchar( (10), 10),
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
3.- Inserte 10 registros en cada una de las tablas. Recuerde que por establecerse la restricción del constraint debe coincidirlos registros del id en las tablas. Ejercicios a) Realice dos bases bases de datos con las las sentencias utilizadas utilizadas anteriormente. anteriormente. b) Cree cuatro tablas relacionadas para cada una de las bases de datos creadas utilizando las sentencias anteriores. c) Inserte diez registros en cada una de las tablas. tablas.
E
s la sentencia que permite combinar registros de dos tablas relacionadas, siempre que existan valores coincidentes en un campo común, esto es, que ambas tengan un campo con el mismo nombre y dominio. Su sintaxis es: FROM INNER JOIN ON [operador de condición (=, >,<, etc)] ; También se puede vincular varias cláusulas ON en una instrucción JOIN, mediante la sintaxis siguiente: SELECT FROM INNER JOIN ON AND ON OR ON [operador de condición]; El alumno aprenderá a relacionar tablas mediante la utilización de la sintaxis INNER JOIN. 1. A la base de datos SistEduc, 2. Copie la siguiente sintaxis: 3. SELECT * FROM Escuela INNER JOIN Zona ON Escuela.idZona = Zona.idZona. 4. Compile y ejecute. 5. Anote el resultado. Ejercicios a) Con las bases de datos creadas en los ejercicios de la práctica 1 realice 5 ejercicios en cada base de datos como el realizado en esta práctica.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
C
omo se mencionó en la sesión pasada, los querys son consultas o relaciones temporales que se establecen entre las tablas existentes en una base de datos. En esta sesión continuaremos realizando consultas relacionales en las cuales podemos establecer estas relaciones anteponiendo las columnas a la derecha o izquierda de acuerdo a los requerimientos de información. En esta sesiòn se utilizara el LEFT OUTER JOIN, esta consulta muestra en la columna derecha el campo de la tabla que se desea consultar y en la izquierda las combinaciones con la tabla 2 donde los valores sean nulos, en el caso que se utiilice el where y ademas la sentencia is null. Su formato es: Select nombretabla 1.nombre campo (columna izquierda), nombretabla2.nombrecampo (columna derecha) FROM tabla 1 LEFT OUTER JOIN tabla 2 ON tabla 1.campo clave principal = tabla2. campo clave principal WHERE nombre tabla 2.nombrecampo IS NULL. El mismo resultado obtendremos utilizado el RIGHT OUTER JOIN, solo que en este caso las columnas quedan invertidas, es decir la de la izquierda del ejemplo anterior queda a la derecha. Es importante mencionar que debe existir una relaciòn directa entre las dos tablas en la cual la clave primaria de la primera tabla debe estar contenida como clave ajena en la segunda tabla y además tener valores iguales para la combinación. Para realizar consultas se pueden utilizar diversos operadores, estos son: Operador <> < > <=
El participante realizara consultas consultas relacionales relacionales con el uso del LEFT OUTER JOIN,
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
SELECT Escuela. Escuela.idCarrera, idCarrera, Escuela. Escuela.NomEscuela, NomEscuela, Carrera. Carrera.idCarrera, idCarrera,Carrera. Carrera.nombreCarrera FROM Escuela LEFT OUTER JOIN Carrera ON Escuela. Escuela.idCarrera = Carrera. Carrera.idCarrera
3.- Compile y ejecute
4.- Inserte el siguiente código en el analizador de consulta SELECT Escuela. Escuela.idCarrera, idCarrera, Escuela. Escuela.NomEscuela, NomEscuela, Carrera. Carrera.idCarrera, idCarrera, Carrera. Carrera.nombreCarrera FROM Escuela RIGHT OUTER JOIN Carrera ON Escuela. Escuela.idCarrera = Carrera. Carrera.idCarrera
5.- Compile y ejecute 6.- Anote los resultados y explique el funcionamiento de ambas sentencias.
Realice cuatro consultas por operador que se encuentra en la tabla.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
L
as funciones de agregado son aquellas que generan valores de resumen en los conjuntos de resultados de las consultas. Una función de agregado procesa todos los valores seleccionados en una única columna para generar un único resultado. Las funciones de agregado se pueden aplicar a todas las filas de una tabla, a un subconjunto de la tabla especificado por una cláusula WHERE o a uno o varios grupos de filas de la tabla. Cuando se aplica una función de agregado, se genera un valor individual por cada conjunto de filas. Las funciones de agregado son: SUM, AVG (los cuales solo se pueden usar con columnas numéricas), MIN y MAX (no se puede utilizar con tipo de datos bit). Estas funciones permiten obtener valores medios, máximos y mínimos, de comparativo de una columna. Mientras que SUM permite sumar los valores de la columna.
. Utilice la tabla la tabla Escuela y copie las siguientes sintaxis anotando los resultados resultados a continuación: a) select sum(totalmatric) from Escuela Resultado: b) select MAX(totalm MAX(totalmatric) atric) from Escuela Resultado: c) Select MINtotalma MINtotalmatric) tric) FROM Escuela Resultado: d) Select AVG(totalm AVG(totalmatric) atric) From Escuela Resultado:
Realice 4 ejercicios como el planteado en esta práctica enlas bases dedatos generados en los ejercicios anteriores. anteriores.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
.
L
a seguridad de las Bases de Datos, son alteradas por la intrusión de usuarios que desean destruir los datos o modificarlos, pero en algunas ocasiones las fallas de energía eléctrica o del propio sistema operativo pueden dar como consecuencia la perdida de información. Es por ese motivo que en muchas ocasiones es necesario realizar copias de las bases de datos, para que en caso de suceder cualquier tipo de accidente puedan restaurarse los datos con la mayor confiabilidad posible evitando pérdidas que en algunos casos son cuantiosas para las empresas. Los periodos entre los que se deben realizar los respaldos es acorde al número de transacciones que se realizan dentro de la base de datos.
El alumno aprenderá a realizar copias de seguridad de la Base de Datos con SQL Server 2005. 1. Accese la base de datos datos de la cual se va a realizar realizar el respaldo de la BD. (vea figura 23.1) 2. En la carpeta de Servers Servers Object busque la etiqueta etiqueta de Backup Device. Device. Oprima botón derecho del Mouse y de clic en la opción backup a DataBase. (Figura 23.2). 3.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Figura 23.2. Inicio del backup de la base de datos.
3.- Se activa una ventana la cual permite elegir el nombre de la base de datos a respaldar y el periodo de tiempo en el que va a estar realizando la copia. Busque su base de datos y actívela y en el periodo cerciórese que tenga la opción de la fecha de hoy. (vea figura 23.3)
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Figura 23.4. Ventana que permite establecer la ruta de copiado de la Base de Datos 5.- Presenta activa una ventana en la cual mediante un árbol de exploración le determina donde se encuentra ubicado su respaldo. (Ver figura 23.6)
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Figura 23.7. Ventana de conclusión del backup
Realice 3 veces el mismo procedimiento con bases de datos diferentes.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
El alumno aprenderá a realizar replica de la base de datos con sintaxis de SQL_TRANSAC para posteriormente implementarlo en una transacción. Instrucciones 1.- Guarde su base de datos SistEduc. 2.- Para realizar esta pràctica deberà haber compilado y ejecutado la base de datos, tablas y registros. 3.- Capture el siguiete còdigo: BACKUP DATABASE [SistEduc] TO DISK = N'C:\Archivos de programa\Microsoft SQL Server\MSSQL.1\MSSQL\Back Server\MSSQ L.1\MSSQL\Backup\SistEduc.ba up\SistEduc.bak' k' WITH RETAINDAYS = 5, NOFORMAT , NOINIT, NOINIT , NAME = N'SistEduc-Full Database Backup' , SKIP, SKIP, NOREWIND, NOREWIND, NOUNLOAD, NOUNLOAD, STATS = 10 GO
4.- Explique cada una de las lìneas anteriores. 5.- El resultado es:
72 percent processed. 99 percent processed. Processed 176 pages for database 'SistEduc', file 'SistEduc_data' on file 2. 100 percent processed. Processed 1 pages for database 'SistEduc', file 'SistEduc_log' on file 2. BACKUP DATABASE successfully processed 177 pages in 0.244 seconds (5.942 MB/sec). 6.- Explique el resultado línea por línea.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
L
as transacciones es un concepto muy utilizado principalmente por que sed piensa en transacciones financieras. Principalmente se utilizan para realizar modificaciones en los registros que se encuentran en una tabla, en el cual puede ser de manera generalizada para todos los registros o para uno específicamente. Estas transacciones se realizan de manera atómica, es decir una vez que inician deben concluirse o de lo contrario los mecanismos de seguridad de la base de datos pueden anularla o abortarla dependiendo de la técnica que se utilice, principalmente cuando suceden fallos del sistema ya sea de tipo físico o lógico. SQL Server 2005 utiliza tres tipos de transacciones: La transacción explicita, la cual es definida por el programador programador utilizando utilizando BEGIN TRANSACTION para especificar el dato que s e va a modificar la cual es completada con la sentencia COMMIT TRANSACTION y realiza excepciones de errores –esto es – hace verificaciones de errores mediante el ROLLBACK TRANSACTION. Transacciones Transacciones Implícitas, son aquellas aquellas que se realizan cuando
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
El participante realizará transacciones transacciones de modificación modificación en los registros de una tabla.
1.- Accese SQL Server 2005. 2.- Utilizando la base de datos y tablas vistas en el tema anterior de esta sesión, se realizarà la siguiente transacción: --Inicio de la transacción BEGIN transaction UPDATE Escuela SET totalmatric =( =(totalmatric totalmatric * 0.05) 0.05) + totalmatric /* modificación modificació n del campo campo totalmatric totalmatric al cual se le incrementa incrementa 5% su valor.*/ WHERE Nomescuela = 'Sor Juana' /* a la escuela que tenga por nombre Sor Juana*/ IF @@ERROR != 0 /*excepcion de error*/ BEGIN ROLLBACK transaction RETURN END COMMIT transaction --Fin de la transacciòn
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Introducción Objetivo El alumno aprenderà a realizar transacciones en tablas relacionadas. Instrucciones 1.- Compile y ejecute su base de datos SistEduc, tablas y registros. 2.- Capture el siguiente código: BEGIN transaction SELECT Escuela. Escuela.idCarrera, idCarrera, Escuela. Escuela.NomEscuela, NomEscuela, Carrera. Carrera.idCarrera, idCarrera,Carrera. Carrera.nombreCarrera FROM Escuela LEFT OUTER JOIN Carrera ON Escuela. Escuela.idCarrera = Carrera. Carrera.idCarrera where Escuela. Escuela.NomEscuela = 'TESE' /* a la escuela que tenga por nombre Sor Juana*/ IF @@ERROR != 0 /*excepcion de error*/ BEGIN ROLLBACK transaction RETURN END
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Introducción Objetivo Instrucciones Ejercicios
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
Trusted by over 1 million members
Try Scribd FREE for 30 days to access over 125 million titles without ads or interruptions! Start Free Trial Cancel Anytime.
E
sta sentencia especifica una condición de búsqueda de un grupo o agregado y normalmente se utiliza con la cláusula GROUP BY. Cuando no se utiliza con esta sentencia, HAVING se comporta como la cláusula WHERE. Su sintaxis es: HAVING . . Con esta sentencia no puede utilizarse los tipos de datos text, image y ntext Group By especifica las agrupaciones que van a realizar en las filas de salida. Cuando se especifica GROUP BY , cada columna que no este en una expresión de agregado de la lista de selección, esto es, todas las columnas de la tabla, se deben incluir en la lista de GROUP BY o esta debe coincidir exactamente con la expresión de la lista de selección. Su sintaxis es: