0% encontró este documento útil (0 votos)
20 vistas

LSBD4

Este documento proporciona instrucciones para completar un laboratorio sobre seguridad en bases de datos. Incluye secciones sobre investigación de conceptos de SQL como T-SQL, DDL, DML y hojas de cálculo. También incluye pasos prácticos para importar una base de datos de ejemplo, crear tablas y agregar/seleccionar datos usando sentencias DDL y DML.

Cargado por

Mario Estrada
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
20 vistas

LSBD4

Este documento proporciona instrucciones para completar un laboratorio sobre seguridad en bases de datos. Incluye secciones sobre investigación de conceptos de SQL como T-SQL, DDL, DML y hojas de cálculo. También incluye pasos prácticos para importar una base de datos de ejemplo, crear tablas y agregar/seleccionar datos usando sentencias DDL y DML.

Cargado por

Mario Estrada
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 12

LABORATORIO DE SEGURIDAD EN BASES

DE DATOS

23/02/2023
Instrucciones: Lea y responda lo solicitado en cada uno de los puntos (1, 2, 3, …, etc.)
correspondiente a cada una de las secciones (A, B, C…, etc.).
A) Investigación sobre T-SQL y sentencias DDL/DML (20 puntos)
1. Investigue ¿qué significan las siglas T-SQL y para qué es utilizado? (responder con
formato de letra Arial 12, extensión mínima de tres líneas)
Transact-SQL. El SQL es un lenguaje universal que se emplea en cualquier
sistema gestor de bases de datos relacional. Tiene un estándar definido, a partir
del cual cada sistema gestor ha desarrollado su versión propia.

2. Investigue ¿cuáles son las sentencias DDL en SQL? (responder con formato de letra
Arial 12, extensión mínima de dos líneas)
Las sentencias del lenguaje de definición de datos (DDL) te permiten crear y
modificar recursos de BigQuery mediante la sintaxis de consultas en GoogleSQL.

3. Mencione al menos cuatro ejemplos de comandos DDL en SQL (responder con formato
de letra Arial 12)
Con Create:
CREATE TABLE [usuarios] (nombre varchar(10), apellidos (10));
Con drop:
DROP TABLE usuarios;
DROP SEQUENCE secuencia1;
DROP INDEX índice1;
Con Alter:
Agregar una nueva columna en la tabla:
ALTER TABLE usuarios ADD email varchar(20);
Renombrar una columna ya creada de nuestra tabla:
ALTER TABLE usuarios CHANGE email correo varchar(50);
Modificar el tipo de dato de la columna de nuestra tabla:
ALTER TABLE usuarios MODIFY correo varchar(30);

Eliminar una columna de nuestra tabla:


ALTER TABLE usuarios DROP COLUMN correo;

4. Investigue ¿cuáles son las sentencias DML en SQL? (responder con formato de letra
Arial 12, extensión mínima de dos líneas)
Las sentencias DML se utilizan para controlar la información contenida en la base
de datos. Las listas siguientes ofrecen ejemplos de estos tipos de sentencias DML:
Adición de registros a una tabla (mandato INSERT) Modificación de la información
de una tabla (mandato UPDATE)

5. Mencione al menos cuatro ejemplos de comandos DML en SQL (responder con


formato de letra Arial 12)
DELETE: Elimina filas de una tabla.
INSERT: Añade nuevas filas a una tabla.
SELECT: Recupera filas de una tabla o fila.
TRUNCATE: Vacía una tabla.
UPDATE: Sustituye valores de columnas en una tabla.

6. Investigue ¿qué objetos pueden existir en una base de datos de SQL Server?
(responder con formato de letra Arial 12)
Bases de datos.
Tables.
Intercalación.
Índices.
Procedimientos almacenados.
Desencadenadores.
Vistas.

7. Investigue ¿qué es la base de datos “Northwind” de SQL Server? (responder con


formato de letra Arial 12)
La base de datos Northwind, era una base de datos de una empresa ficticia de
ventas, que Microsoft entregaba para realizar pruebas. Actualmente Microsoft usa
para ejemplos, las bases de datos AdventureWorks y Contoso, que están
modernizadas con datos de venta en línea y con una estructura para uso con
herramientas de Bussiness Intelligence.

8. Investigue ¿qué es una de cálculo? (responder con formato de letra Arial 12, extensión
mínima de dos líneas)
Una hoja de cálculo es una herramienta sumamente útil para que las personas
puedan trabajar con números y realizar cálculos con ellos. La hoja de cálculo nos
permite trabajar con una gran cantidad de datos y números, y gracias a una gran
variedad de funciones que la integran podemos realizar cálculos matemáticos,
estadísticos, técnicos y financieros.

9. Mencione dos ejemplos de software para hojas de cálculo (responder con formato de
letra Arial 12)
Excel y Google sheets.

10. ¿Cuál es la diferencia entre una hoja de cálculo y una base de datos? (responder con
formato de letra Arial 12, extensión mínima de dos líneas)
Una hoja de cálculo carga multitud de datos en la memoria del computador al
abrirse. La mayor parte de los datos que se cargan posiblemente sean
innecesarios y no se utilicen en ese momento. Las bases de datos, a diferencia de
las hojas de cálculo, cargan los datos almacenados en el computador solo cuando
los necesita.
B) Importar bases de datos con contenido de prueba para ejercicios (15 puntos)
1. Descargamos el archivo instnwnd.sql desde la siguiente página de github:
https://github.com/Microsoft/sql-server-samples/tree/master/samples/databases/
northwind-pubs
2. En caso de que el archivo no se descargue y despliegue todo el contenido en el
navegador, procedemos a seleccionarlo todo, copiarlo y pegarlo en un archivo de
texto para posteriormente guardarlo como “instnwnd.sql” (sin olvidar guardarlo como
Tipo: Todos los archivos en bloc de notas).

3. Abrimos una sesión en SQL Server Management Studio iniciando sesión con nuestro
usuario LSBDUSER, damos clic en la siguiente ruta de opciones: File  Open  File
y procedemos a ubicar el archivo creado en el punto 2 (puede que demore un tiempo
al momento de abrirlo).
4. Vemos ahora que se abre una pestaña con el nombre del archivo que abrimos,
ejecutamos el comando con F5 o si lo prefieren dar clic en el botón “Execute” que se
encuentra en la barra de herramientas (puede que demore un tiempo durante su
ejecución).
5. Si todo salió en orden nos saldrá un mensaje con la pantalla de “Commands completed
successfully”, en la barra izquierda de Object Explorer procedemos a dar botón
derecho a la carpeta “Databases” y en seguida escogemos la opción “Refresh” para
luego expandir las bases de datos que se encuentran en nuestro motor.

6. Esto nos generará una base de datos de nombre “Northwind” que a su vez contiene
objetos y datos ya hechos para funcionar dentro de un motor de base de datos SQL
Server. Como ya se habrá dado cuenta desde la sección A) la base de datos Northwind
no se utiliza para un sector empresarial real, pero nos brinda contexto de saber cómo
es que son diseñadas algunas tablas.
7. En SQL Server Management Studio, cierre la pestaña que contiene el archivo
“instnwnd.sql” sin guardar cambios en caso de que el programa lo solicite, y a
continuación abra una ventana nueva de “New query” y procedemos a ejecutar USE
Northwind
C) Sentencias DDL Parte 1 – Práctica (15 puntos)
Desde SQL Server Management Studio estamos apuntando a la base de datos Northwind,
con esta base de datos comenzaremos a practicar las sentencias DDL. Tal como sus siglas
indican, son encargados de definir y manipular los objetos que se crearán a una base de
datos
1. (CREATE) Crear una tabla de nombre “tbEstudiantes” con los siguientes campos

Nombre de la columna Tipo de dato ¿Permite valores nulos?


IDMatricula Int (llave primaria) No
nombreEstudiante Varchar(50) No
apellidoPatEstudiante Varchar(50) No
apellidoMatEstudiante Varchar(50) No
nombreCarrera Varchar(4) No
Promedio Float No

CREATE TABLE tbEstudiantes (


ID_MATRICULA INT PRIMARY KEY,
NombreEstudiante VARCHAR(50) NOT NULL,
ApellidoPatEstudiante VARCHAR(50) NOT NULL,
ApellidoMatEstudiante VARCHAR(50) NOT NULL,
NombreCarrera VARCHAR(4) NOT NULL,
Promedio FLOAT NOT NULL
)

 Si utilizó código SQL procedemos a ejecutarlo con F5


 En caso de haber utilizado el diseñador de tablas dar clic derecho en la pestaña de
la tabla y seleccionar “Save Table_1” y a continuación ingresamos el nombre
sugerido al principio de este punto.
2. (ALTER) Al parecer, durante el diseño olvidamos crear una nueva columna con el plan
de estudios. Para no borrar la tabla y hacerla desde cero vamos a alterar la tabla para
añadir la columna “PlanDeEstudios”

Nombre de la columna Tipo de dato ¿Permite valores nulos?


PlanDeEstudios int No

ALTER TABLE tbEstudiantes


ADD PlanDeEstudios INT NOT NULL
 Si utilizó código SQL procedemos a ejecutarlo con F5
 En caso de haber utilizado el diseñador de tablas dar clic derecho en la pestaña de
la tabla y seleccionar “Save Table_1” y a continuación ingresamos el nombre
sugerido al principio de este punto.
D) Sentencias DML – Práctica (15 puntos)
Aún faltan instrucciones DDL por practicar mientras tanto, vamos a dar la introducción
para las sentencias DML que se encargan principalmente de manipular los datos que
contienen los objetos de una base de datos.
1. (INSERT) De acuerdo con la siguiente tabla aplique la sentencia INSERT, para el caso de
los últimos tres registros usted tendrá que escribirlos manualmente (tanto en la
tabla de este archivo como en el código) de acuerdo con información de usted y
compañeros suyos de cualquier otra carrera dentro de FCFM (incluso ficticios).

Matricula Nombre Apellido P Apellido Carrera Promedio Plan de


M estudios
1898765 Sinaí Muñoz Sigala LCC 99 420
1712345 Antonio Herrera Jiménez LMAD 98 401
de Jesús
[Adjunte aquí el código SQL utilizado para hacer el INSERT de los compañeros escritos en
la tabla]
2. (SELECT) Los datos de la tabla ya se encuentran guardados desde el momento que
ejecutó el INSERT, por lo que vamos a aplicar una sentencia SELECT para que esos
datos nos lo puedan desplegar SQL Server en pantalla. Vamos a pedir puntos
específicos con la información obtenida.
I. Aplicar instrucción SELECT para que despliegue únicamente las columnas de
matrícula, nombre, apellido paterno y apellido materno sin ningún tipo de filtro
adicional.
[Ingresar script escrito en la ventana de Query Editor]
[Ingresar captura de pantalla de la tabla resultante con el script creado]

II. Aplicar instrucción SELECT que despliegue todas las columnas, pero únicamente
muestre aquellas que la carrera sea LMAD

[Ingresar script escrito en la ventana de Query Editor]


[Ingresar captura de pantalla de la tabla resultante con el script creado]
III. Aplicar instrucción SELECT que despliegue únicamente las columnas de matrícula y
promedio y muestre solamente los promedios mayores o iguales a 90.
[Ingresar script escrito en la ventana de Query Editor]
[Ingresar captura de pantalla de la tabla resultante con el script creado]

3. (UPDATE) Al parecer un alumno de la carrera LMAD con matrícula 1712345 ha


escogido cambiar de plan de estudios al plan 430, por lo que habrá que hacer el
trabajo de escolar para actualizar dicho plan de estudios. Aplique la instrucción
UPDATE para que el alumno pueda ver este cambio reflejado.

[Ingresar script para aplicar el UPDATE solicitado en la ventana de Query Editor]


[Adjunte evidencia del mensaje desplegado una vez ejecutado el comando UPDATE]
Ahora para ver gráficamente los cambios, aplique la instrucción SELECT para desplegar
todas las columnas, pero filtre únicamente por la matrícula que acabamos de actualizar.
[Ingresar script escrito en la ventana de Query Editor]
[Ingresar captura de pantalla de la tabla resultante con el script creado]

4. (DELETE) Por último, una alumna de la carrera LCC con matrícula 1898765 ha decidido
darse de baja de la facultad, por lo que habrá que eliminarla de la tabla para declarar
dentro de la base de datos que un estudiante dejará de estar en lista, aplique la
sentencia DELETE para borrar el registro de la alumna en cuestión sin olvidar poner el
filtro del DELETE con la matrícula correspondiente.

[Ingresar script DELETE escrito en la ventana de Query Editor]


[Ingresar captura de pantalla del mensaje resultante con el script creado]

Ahora para ver gráficamente los cambios, aplique la instrucción SELECT para desplegar
todas las columnas, pero filtre únicamente por la matrícula que acabamos de eliminar.
[Ingresar script escrito en la ventana de Query Editor]
[Ingresar captura de pantalla de la tabla resultante con el script creado]

E) Sentencias DDL Parte 2 – Práctica (15 puntos)


Para esta segunda parte, nos enfocaremos en aplicar las sentencias restantes para cubrir
aquellas instrucciones DDL más utilizadas.
3. (TRUNCATE) Al final del día, se ha decidido eliminar todos los datos contenidos en la
tabla para que la información pueda ser transferida a una nueva tabla (suponiendo
que ya hicimos el respaldo correspondiente) vamos a ejecutar la instrucción
TRUNCATE para la tabla tbEstudiantes.

[Ingresar script escrito en la ventana de Query Editor]


[Ingresar captura de pantalla del mensaje resultante con el script creado]
Ahora para ver gráficamente los cambios, aplique la instrucción SELECT para desplegar
todas las columnas sin ningún tipo de filtro.
[Ingresar script escrito en la ventana de Query Editor]
[Ingresar captura de pantalla de la tabla resultante con el script creado]

4. (DROP) Por último, vamos a eliminar la tabla aplicando la sentencia DROP seguido del
objeto de base de datos a eliminar (que en este caso es TABLE) y el nombre del objeto.

[Ingresar script escrito en la ventana de Query Editor]


[Ingresar captura de pantalla del mensaje resultante con el script creado]

F) Práctica de la sentencia SELECT en las tablas de la base de datos Northwind (10


puntos)
La dinámica de este punto será la siguiente: se presentarán puntos a cumplir para la
instrucción SELECT, copiará el código escrito en el Query Editor seguido de su ejecución
además de una segunda captura de pantalla del SELECT ejecutado. No olvidar haber
ejecutado USE Northwind antes de comenzar con esta sección.
i. De la tabla “Customers” traer únicamente ContactName, Address, City y Country
para aquellos clientes que sean del país México.

[Adjuntar código de SQL implementado, sea captura de pantalla o copiar y pegar el código
ejecutado]
[Adjuntar evidencia de pantalla de la tabla resultante]
ii. De la tabla “Products” traer todas las columnas para aquellos productos que sus
unidades en stock sea igual a cero (0).

[Adjuntar código de SQL implementado, sea captura de pantalla o copiar y pegar el código
ejecutado]
[Adjuntar evidencia de pantalla de la tabla resultante]

iii. De la tabla “Shippers” traer el nombre de la compañía y el teléfono de todos los


datos contenidos en la tabla.

[Adjuntar código de SQL implementado, sea captura de pantalla o copiar y pegar el código
ejecutado]
[Adjuntar evidencia de pantalla de la tabla resultante]

También podría gustarte