Sei sulla pagina 1di 10

Becas Control+F: SQL Server 2005

Evaluacin Programacin

Seleccione la o las opciones que considere correctas en las preguntas que siguen a continuacin: Mdulo 1 1) Teniendo como referencia la normalizacin de las Bases de Datos, indique cules son correctas. Marque todas las correctas.

a) Puede aceptarse un adecuado grado de desnormalizacin teniendo en cuenta que se beneficia el rendimiento en las consultas. b) Una Base de Datos que no est totalmente normalizada est mal diseada. c) La normalizacin de las Bases de Datos hace a la base ms entendible, pero no tiene por objetivo el evitar la redundancia de los datos. d) Uno de los objetivos de la normalizacin de las Bases de Datos es proteger la integridad de los datos.

Mdulo 2 2) Cual de las siguientes sentencias SELECT devuelve la categora y el sueldo total para cada categora basados en la tablas que se muestran a continuacin cuando el sueldo total es mayor a $13.149,07.

a) SELECT c.CodigoCategoria, SUM(e.Sueldo) as SueldoTotal FROM Categorias c INNER JOIN Empleados e ON c.CodigoCategoria = e.Categoria GROUP BY c.CodigoCategoria ORDER BY c.CodigoCategoria b) SELECT c.CodigoCategoria, SUM(e.Sueldo) as SueldoTotal FROM Categorias c INNER JOIN Empleados e ON c.CodigoCategoria = e.Categoria ORDER BY c.CodigoCategoria HAVING SUM(e.Sueldo) > 13149,07

c) SELECT c.CodigoCategoria, SUM(e.Sueldo) as SueldoTotal FROM Categorias c INNER JOIN Empleados e ON c.CodigoCategoria = e.Categoria GROUP BY c.CodigoCategoria HAVING SUM(e.Sueldo) > 13149,07 ORDER BY c.CodigoCategoria d) SELECT c.CodigoCategoria, SUM(e.Sueldo) as SueldoTotal FROM Categorias c INNER JOIN Empleados e ON c.CodigoCategoria = e.Categoria WHERE SUM(e.Sueldo) > 13149,07 GROUP BY c.CodigoCategoria ORDER BY c.CodigoCategoria

3) La tabla Instructores tiene un campo Edad que se actualiza una vez por mes al realizarse la liquidacin de haberes. Se requiere que la Edad de los instructores est actualizada al momento de emitir cualquier reporte. Indique qu accin es la ms conveniente para lograr este objetivo. o o o a) Crear un campo FechaNacimiento y que los usuarios modifiquen sus consultas para calcular la edad en el momento de emitir los reportes. b) Crear un campo FechaNacimiento y que los usuarios accedan a la tabla Instructores mediante una vista que calcule la Edad. c) Crear un campo FechaNacimiento y modificar el campo Edad con una frmula que obtenga la diferencia entre la Fecha de Nacimiento y la Fecha Actual. d) Crear un campo FechaNacimiento y que el campo Edad se actualice mediante un desencadenador (trigger) de consulta.

Mdulo 4 4) Cules de las siguientes afirmaciones son correctas respecto de una instantnea de datos? Marque todas las correctas.

a) Solo puede existir una instantnea de datos para una determinada base de datos, por da y por usuario. b) Se mantiene hasta que un usuario la borra explcitamente c) Se mantiene hasta que un usuario hace una copia de seguridad de la base de datos. d) Se mantiene mientras queden transacciones abiertas en la base de datos. e) Es una vista esttica de slo lectura de una base de datos

5) Cul de las siguientes sentencias sirve para crear una Base de Datos con las caractersticas que se detallan, suponiendo que la Base de Datos Model tiene un tamao de 10 MB para los Datos y de 5 MB para el log, Incremento de crecimiento = 0 y sus archivos se encuentran en C:\DATA? Nombre de la Base de Datos: NuevaDB Archivo de datos: C:\DATA\NuevaDB_Data Tamao inicial: 37 MB Archivo de registro de transacciones (log): D:\DATA\ NuevaDB_Log Tamao inicial: 10 MB Recovery model: Simple o a) CREATE DATABASE NuevaDB ON (Name = NuevaDB _Data, Filename = C:\DATA\ NuevaDB_Data.mdf) LOG ON (Name = NuevaDB _Log, Filename = D:\DATA\ NuevaDB_ Log.ldf) GO ALTER DATABASE [NuevaDB] SET RECOVERY SIMPLE GO b) CREATE DATABASE NuevaDB ON (Name = NuevaDB _Data, Filename = C:\DATA\ NuevaDB _Data.mdf, Size = 37 MB) LOG ON (Name = NuevaDB_Log, Filename = D:\DATA\ NuevaDB_Log.ldf) GO ALTER DATABASE [NuevaDB] SET RECOVERY SIMPLE GO c) CREATE DATABASE NuevaDB ON (Name = NuevaDB _Data, Filename = C:\DATA\ NuevaDB_Data.mdf, Size = 37 MB) LOG ON (Name = NuevaDB _Log, Filename = D:\DATA\ NuevaDB_Log.ldf Size = 10 MB) WHIT SET RECOVERY SIMPLE d) CREATE DATABASE NuevaDB DATA ON (Name = NuevaDB_Data, Filename = C:\DATA\ NuevaDB_Data.mdf, Size = 37 MB) LOG ON (Name = NuevaDB_Log, Filename = D:\DATA\ NuevaDB_Log.ldf Size = 10 MB RECOVERY SIMPLE) GO

Mdulo 5 6) Indique cules de los siguientes tipos de datos son nuevos de la versin SQL Server 2005. Marque todas las opciones correctas.

a) varbinary(max) b) varchar(max) c) xml (max) d) varchar (extendido) e) text (binary)

7) Cual es el proceso correcto para crear una tabla con particiones? o o a) No es obligatorio cumplir con un proceso u orden de creacin de los objetos. b) Crear primero una funcin de particin. Luego el esquema de particin asociado a dicha funcin. Finalmente crear la tabla asociada al esquema de particin c) Crear primero la tabla, luego el esquema de particin y finalmente crear la funcin de particin d) Al crear la tabla definir dentro de la sintaxis del CREATE TABLE el esquema de particin y la funcin de particin dentro de un esquema comn de fcil acceso.

o o

Mdulo 6 8) Se est desarrollando un procedimiento almacenado el cual deber agregar a la tabla Remitos_Detalle el detalle de los artculos a entregar con un determinado remito (cdigo del artculo, descripcin del artculo y cantidad). El procedimiento necesita recibir el detalle de todos estos artculos en una nica llamada De las siguientes opciones, indique cul es la mejor de manera de programar este procedimiento. o o a) Usar un parmetro cuyo tipo de datos sea xml y recibir los datos en formato xml b) Crear un tipo de dato de usuario autodefinido que permita recibir la informacin de los artculos y usar este tipo de dato en el parmetro del procedimiento almacenado. c) Usar un parmetro cuyo tipo de datos sea nvarchar(4000) y recibir los datos de los artculos separados por comas o Tabs de acuerdo a la configuracin regional. d) Usar un parmetro cuyo tipo de datos sea varchar(max) y recibir los datos de los artculos directamente desde una clave externa.

Mdulo 7 9) De la lista las operaciones, cules pueden efectuarse con el Asistente para la optimizacin de motor de base de datos? Marque todas las opciones correctas.

a) Analizar los ndice a travs de la generacin automtica de trazas (trace) b) Desfragmentar automticamente los ndices que causan baja performance. c) Generar recomendaciones sobre combinacin ptima de ndices para las bases de datos mediante el uso del optimizador de consultas para el anlisis de las consultas de una carga de trabajo. d) Generar recomendaciones sobre las formas de optimizar la base de datos referidos a un pequeo conjunto de consultas problemticas. e) Analizar los efectos de los cambios propuestos en referidos a la distribucin de consultas entre tablas, el uso de ndices y el rendimiento de las consultas de la carga de trabajo. f) Generar informes resumen sobre los efectos que tendra la implementacin de las recomendaciones efectuadas en una concreta carga de trabajo.

10) Se crea un ndice con la siguiente instruccin:

CREATE INDEX Ind_Empleados_NyA ON Empleados (Apellidos, Nombres) INCLUDE (Categoria, CUIL)

Indique qu afirmacin describe al ndice que fue creado. o o a) Es agrupado. Los campos Apellidos, Nombres, Categoria y CUIL forman la clave. b) Es agrupado. Los campos Apellidos y Nombres forman la clave. Los campos Categoria y CUIL no forman parte de la clave sino que se incluyen en el nivel hoja del ndice. c) Es no agrupado. Los campos Apellidos, Nombres, Categoria y CUIL forman la clave. d) Es no agrupado. Los campos Apellidos y Nombres forman la clave. Los campos Categoria y CUIL no forman parte de la clave sino que se incluyen en el nivel hoja del ndice

o o

11) Para los ndices con espacio libre, indique cules de las siguientes afirmaciones son vlidas. Marque todas las opciones correctas.

a) En un ndice un Factor de Relleno ( FillFactor) del 100% mejora la performance de las consultas, pero atenta contra la performance de la actualizacin de datos. b) Cuando una pgina se llena, al ingresarse un nuevo registro se divide y se reorganizan todas las pginas con el Factor de Relleno definido. c) El porcentaje de espacio disponible puede especificarse para las pginas que no son hojas, poniendo en ON la opcin PAD-INDEX d) El uso de ndices con espacio libre no aumenta el espacio ocupado en el disco por la base de datos.

Mdulo 8 12) Se requiere mantener la integridad referencial entre las tablas Empleados y Categoras. Indique cul de las siguientes opciones es la ms aconsejable.

o o o o

a) Un procedimiento almacenado que verifique la integridad como ltimo paso de la transaccin. b) Una clave externa (Foreing Key) que relacione Categora (Empleados) y CodigoCategoria (Categorias). c) Un desencadenador (Trigger) que verifique la integridad o enve un mensaje de error al usuario. d) Una vista creada con la clusula WITH CHECK OPTION que relacione Categora (Empleados) y CodigoCategoria (Categorias).

13) Para los desencadenadores (trigger) creados FOR INSTEAD OF, indique cul de las siguientes afirmaciones es correcta. o o a) Los desencadenadores creados FOR INSTEAD OF pueden crearse exclusivamente para compatibilizar versiones anteriores de Transact SQL. b) Los desencadenadores creados FOR INSTEAD OF contienen cdigo que se ejecuta en lugar de la accin para la que fueron creados.

c) Si no se cumplen las condiciones de contorno, un desencadenador creado FOR INSTEAD OF no puede ejecutarse y se transforma en un simple desencadenador creados FOR AFTER. d) Un desencadenador creado FOR INSTEAD OF slo puede crearse si ya existe un desencadenador FOR AFTER para la misma accin.

Mdulo 9 14) Un analista de RRHH est examinando la cantidad de Empleados que corresponden a las categoras ms pobladas con la vista EmpCat_10 (Categoras con ms de diez empleados) y halla que las cantidades de la Categora 14 no son las correctas. Sabe que hay tres empleados que fueron promocionados de y genera una instruccin de UPDATE para sumar esos tres empleados a la categora 9 y restndoselos a la 14. Indique qu sucede cuando el usuario realiza estas actualizaciones. CREATE VIEW EmpCat_10 SELECT Categoria, Count(Legajo) as CantidadEmpleados FROM Empleados GROUP BY CodigoCategoria HAVING Count(Legajo) > 10 ORDER BY CodigoCategoria

o o o o

a) Siempre y cuando ambas modificaciones se incluyan en una transaccin, se actualizan ambas Categoras. b) El SQL devuelve un error porque si se actualizaran los datos la Categora 9 quedara fuera del alcance de la vista. c) El SQL actualiza la categora donde se suman los Legajos pero no actualiza la Categora donde se restan. d) El SQL devuelve un error porque est tratando de actualizar un valor que surge de una agrupacin.

15) De las siguientes afirmaciones, indique cules son ciertas respecto de las vistas indexadas. Seale todas las correctas.

a) El primer ndice debe ser un ndice agrupado nico porque la vista indexada guarda los resultados en la Base de Datos como si fuera una tabla. b) El primer ndice puede ser de cualquier tipo porque la vista indexada, como cualquier vista, no almacena datos.

c) En la definicin de una vista indexada se puede hacer referencia a otras vistas, no slo a tablas. d) En el uso de una vista indexada se puede hacer referencia a otras vistas, no slo a tablas o a vistas indexadas.

16) Indique cules de las siguientes afirmaciones son correctas referidas al uso de vistas para facilitar el manejo de la seguridad. Seale todas las correctas.

a) Las vistas facilitan el manejo de la seguridad porque devuelven solamente las columnas autorizadas a los usuarios a los que se les quiere dar acceso. b) Las vistas facilitan el manejo de la seguridad porque aslan a las tablas de los usuarios. c) Las vistas facilitan el manejo de la seguridad porque los usuarios pueden acceder a los datos sin tener permisos sobre las tablas, con el permiso sobre las vistas es suficiente. d) Las vistas no pueden facilitar el manejo de la seguridad porque heredan la estructura de permisos de las tablas subyacentes.

Mdulo 10 17) Indique cul de las instrucciones que se detallan genera un error al ejecutar el siguiente procedimiento almacenado. CREATE PROC dbo.InsertarPais @CodPais varchar(3), @DescPais varchar(50) AS INSERT INTO Person.CountryRegion (CountryRegionCode, Name) VALUES (@CodPais, @DescPais) o o o o a) EXEC InsertarPais @CodPais =CL, @DescPais =Chile b) EXEC InsertarPais CL,Chile c) EXEC InsertarPais CL Chile d) EXEC InsertarPais @DescPais =Chile, @CodPais =CL

Mdulo 11 18) Dada la funcin que se detalla, indique cul de las consultas devuelve el total de las horas que tiene asignadas el instructor 88 en los cursos que se encuentran activos.

CREATE FUNCTION Capacitacion.HorasCurso (@Instructor int, @Estado char (1)) Returns decimal (18,2) AS BEGIN DECLARE @TotalHoras decimal (18,2) SELECT @ TotalHoras = SUM (CantHoras) FROM Educacion.Cursos c JOIN Educacion.Instructores i ON i.Curso = c.Curso WHERE i.Instructor = @Instructor AND c.Estado = @Estado IF (@TotalHoras IS NULL) Set @ TotalHoras = 0 Return @ TotalHoras END o a) SELECT NombreApellido, Capacitacion.HorasCurso (88) o o b) SELECT NombreApellido, Capacitacion.HorasCurso ( ) WHERE Instructor = 88 c) DECLARE @HsActivos decimal (18,2) SELECT NombreApellido, Capacitacion.HorasCurso (88, A) @HsActivos Output o d) SELECT NombreApellido, Capacitacion.HorasCurso (88, A)

19) Usted ha creado una funcin encriptada (la cre con la opcin WITH ENCRYPTION). Indique con cul de las siguientes acciones podra recuperar el cdigo de su funcin. o o o o a) Ingresando al SQL Server Management Studio y siendo Administrador. b) Usando el procedimiento almacenado sp_HelpText c) Usando una copia del cdigo guardada como archivo de texto antes de crear la funcin. d) Usando el Procedimiento almacenado sys_parameters

Mdulo 12 20) Una de las siguientes no es una opcin de la instruccin SET ISOLATION LEVEL. Indique de cul se trata. o o o o a) SNAPSHOT b) REPEATABLE READ c) READCOMMITTED d) AFTERCOMMITTED

21) Qu desventaja tiene el nivel de aislamiento de transaccin READ UNCOMMITED? o o o o a) Las transacciones son decididamente ms lentas y puede colapsar la consulta. b) Los valores de los datos obtenidos en una consulta pueden cambiar porque tambin se leen las filas modificadas pero no confirmadas. c) Si un dato modificado no se confirma y fue ledo, la transaccin de consulta se vuelve atrs. d) Si un dato modificado no se confirma y fue ledo, todas las transacciones en las que est involucrado el dato se vuelven atrs.

10

Potrebbero piacerti anche