Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% encontró este documento útil (0 votos)
118 vistas14 páginas

3 SQL DML DDL

Descargar como pdf o txt
Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1/ 14

GUÍA #3 – CICLO 01/2019

Laboratorio #3
Definición de SQL
DDL y DML
i

¿Qué es SQL y por qué es importante conocerlo?


SQL (Structured Query Language o Lenguaje de Consulta Estructurado) es un lenguaje
de programación estándar utilizado para la manipulación de bases de datos
relacionales, que permite realizar diversos tipos de operaciones en ellas. En este
laboratorio aprenderá DDL (Lenguaje de Definición de Datos) y DML (Lenguaje de
Manipulación de Datos).

Conozcamos el IDE
SQL Server Management Studio (SSMS) es un ambiente de trabajo para
estructuras SQL, provee de herramientas para configurar, monitorear y
administrar bases de datos.
Encienda la máquina virtual y busque este icono en el escritorio.

Al entrar en la aplicación, aparecerá esta pantalla, dar al botón “Conectar”.

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Lo que verá es una pantalla así:

En los laboratorios anteriores se han realizado los proceso iniciales de creación de


una base de datos, el siguiente paso después de tener el diagrama totalmente
normalizado, es el de crear la base datos, junto a todas sus tablas y definir sus
atributos.

Creación de nueva base de datos:


Hay dos opciones para crear una nueva base, la primera es solo con el ratón:
desplegar la instancia creada al iniciar la aplicación y buscar la carpeta Bases de
datos, dar con el botón derecho sobre la carpeta y elegir la opción “Nueva base de
datos”.

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Desplegará otra pantalla en la que requerirá de un nombre para la nueva base, puede
ponerle el nombre que desee, en esta ocasión se nombra “Labo3”, luego dar click al
botón “Aceptar”, por el momento los parámetros de configuración de esta ventana se
dejarán con sus valores por defecto.

En el panel de navegación lateral debería aparecer la base de datos recién creada:

La otra opción para crear una base es utilizando sentencias DDL SQL.

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

DDL
Las sentencias DDL se utilizan para crear, modificar la estructura, de las tablas y objetos
de la base de datos. Por ejemplo:

Sentencia Definición Ejemplos de uso

Utilizada para crear objetos en la base CREATE DATABASE <db_name>


CREATE
de datos CREATE TABLE <table_name>

Es utilizada para agregar, borrar o


ALTER TABLE <name> ADD
ALTER modificar columnas en una tabla
COLUMN <name and type>
existente

Utilizado para cambiar el nombre a una RENAME TABLE <old name> TO


RENAME
tabla <modified name>

DROP DATABASE <db_name>


DROP Borra objetos de la base de datos
DROP TABLE <table_name>
Elimina todos los registros de la tabla,
TRUNCATE incluyendo los espacios asignados a los TRUNCATE <table_name>
registros

DML
Las sentencias DML son utilizadas para gestionar datos dentro de las tablas. Por
ejemplo:

Sentencia Definición Ejemplos de uso


Se utiliza para seleccionar datos de la SELECT <field_came> FROM
SELECT
base de datos <table_name>

Es utilizada para agregar nuevos INSERT INTO <table_name>


INSERT
registros en una tabla (<column>) VALUES (<data>)

UPDATE <table_name> SET


Utilizado para modificar un dato dentro
UPDATE <column> = <new_data> WHERE
de una tabla
<condition>
DELETE FROM <table_name>
DELETE Elimina un registro de la base de datos
WHERE <condition>

Los pasos para crear la base con comandos son los siguientes:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Crear un nuevo archivo de consultas, dando click al siguiente icono

Preguntará a que servidor queremos relacionar la consulta, se utiliza el servidor por


defecto y dar click al botón “Conectar”

Tendremos una página en blanco en la que escribiremos las sentencias para la


creación de la nueva Base de Datos. Se utiliza el comando CREATE

Sombrear el comando CREATE y en la barra superior, buscar el botón con un signo de


admiración que dice “Ejecutar”, presionarlo y esperar el mensaje “Comandos
completados correctamente” en la ventana Mensajes

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Presionar botón derecho sobre el servidor activo (Con el icono de play verde) y buscar
la opción “Actualizar” en el menú, debería aparecer la nueva base de datos en la lista
disponible.

¡Listo! la base de datos ha sido creada.


Se procede a crear las tablas y definir los atributos para cada una, se utilizará el
siguiente diagrama relacional normalizado como ejemplo:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Antes de empezar con la creación de todos los objetos que utilizaremos, debemos
indicarle al IDE que usaremos nuestra base de datos Labo3 con la instrucción USE:

O bien podemos usarlo por el indicador del IDE:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Creación de objetos de bases de datos

Tablas
Utilizaremos el comando CREATE TABLE donde colocaremos los campos a utilizar.
Ejemplo:

Note que podemos colocar la llave primaria desde la creación de la tabla usando las
palabras reservadas “primary key” en el atributo clave, y colocamos también la
condición ‘not null’. (En clase se han visto dos formas más para configurar las llaves
primarias ¿Cuales son?)
Crearemos todas las tablas necesarias para nuestro ejemplo de la biblioteca UCA.
Si tienes consultas de los tipos de datos, ve al apéndice 1.

Llaves Primarias y Foráneas


Las llaves primarias son el atributo clave de la tabla, sin ella, los datos estarían
desordenados y sin un índice que los identifique, de esto se puede asumir que la llave
primaria no puede ser nula. Para crear llaves primarias desde la creación de la tabla
se usará el siguiente ejemplo:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Las llaves foráneas son importantes para la relación de tablas en la base de datos ya
que nos permitirán hacer consultas cruzando tablas y obteniendo campos de ambas
partes. En el siguiente ejemplo veremos la creación de las llaves foráneas desde la
creación de la tabla, pero es recomendable hacerlo en un comando aparte, con un
CONSTRAINT pues le asignamos un nombre a esta relación en caso de querer borrarla
luego:

NOTA: No es necesario que los campos referencia y referenciado tengan el mismo Commented [1]: Las Notas irán con el formato
nombre, pero sí es requisito que dispongan del mismo tipo de dato. sugerido por el modelo del guía, cuando se cree el
documento final.
ALTER TABLE
En el caso de haber cometido un error al crear la base de datos, olvidar algún atributo,
llave primaria o tipo de dato erróneo, puede modificar las propiedades de la tabla con
esta instrucción.
En el caso de haber olvidado colocar la llave primaria, se puede solventar con el
siguiente ejemplo:

También puede agregar la llave foránea después de haber creado las tablas::

Al olvidar colocar algún campo, puede ser resuelto de la siguiente forma:

Si se colocó el tipo de dato erróneo en una columna:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

INSERT
Ahora insertamos datos a las tablas que creamos con la sentencia INSERT y los
nombres de las columnas que queremos insertar:

Cuando se insertan los datos, hay que respetar los tipos, en los campos cuyo tipo es
varchar se tienen que agregar los datos encerrados en comillas ‘simples’.
También puedes agregar datos a tus tablas aunque no especifiques los campos,
siempre y cuando insertes todos los campos en el orden en el que están guardados en
la tabla. Por ejemplo, agregaremos los datos de un nuevo libro:

SELECT
Para verificar que las tablas fueron modificadas, utilizamos la sentencia SELECT, en
este ejemplo le decimos que nos muestre todos los datos:

El resultado será el siguiente:

Los SELECT también pueden mostrarnos columnas específicas, solo se sustituye el


asterisco por el nombre de la columna que se quiere consultar.

El resultado debe verse algo así:

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

UPDATE
Esta sentencia se utiliza para actualizar un registro de una tabla, es preferible utilizar
la sentencia WHERE junto a la llave primaria para especificar qué registro queremos
actualizar. Actualicemos el libro con código 2 y cambiemos el número de páginas a
800:

NOTA: ¿Qué pasaría si no utilizamos el WHERE?

DELETE
Esta sentencia se utiliza para borrar un registro de una tabla, para esto necesitamos
saber la llave primaria del registro a eliminar, puede utilizarse otro campo pero no es
recomendado pues podemos borrar muchos datos de una vez, para este ejemplo
borraremos el libro “Siempre Alice”, cuya llave primaria es el número 2:

Si realizamos un SELECT a la tabla LIBROS veremos que el campo ha sido eliminado.

NOTA: Es importante que no olvidemos la sentencia WHERE ¿Qué pasaría


si no la escribimos?
DROP
Para terminar de estudiar las sentencias, utilizaremos el comando DROP para borrar la
base de datos que no estamos usando actualmente y que creamos al principio del
laboratorio.

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Actualizamos el servidor activo, siguiendo los mismos pasos que se utilizaron para ver
la nueva base cuando fue creada.

Ejercicio
Elegir una pareja de tablas del Diagrama Relacional Normalizado del ejemplo, escribir
los comandos para: crear las tablas, crear las fk, llenarlas con al menos 3 registros
cada una, realizar un update y realizar un delete.

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

Apéndice 1: Tipos de Datos


Hay que tener en cuenta los tipos de datos que usaremos para cada campo, así que se
listaran los más utilizados para tener algunas nociones:
Numéricos:

Tipo de dato Rango Tamaño Declaración

bigint [-2^63, 2^63-1] 8 Bytes bigint

int [2^31, 2^31-1] 4 Bytes int

smallint [2^15, 2^15-1] 2 Bytes smallint

tinyint [0, 225] 1 Byte tinyint

decimal o Precisión hasta 38 17 Bytes Max decimal(p,s)


numeric decimales numeric(p,s)

Al tipos de dato int se le puede colocar un modificador identity con el cual podemos
hacer un autoincremento de valor. Podemos usarlo en las llaves primarias por
ejemplo.
¿Qué tipo de dato utilizaría usted para la edad de una persona?
Cadenas de texto:

Tipo de dato Rango Declaración

char [1, 8000] char()

varchar [1, 8000] varchar()

text [1, 2^31-1] text

¿Cuál es la diferencia entre Char y Varchar?


Fecha:

Tipo de dato Formato Tamaño Declaración

date YYYY-MM-DD 3 Bytes date

datetime2 YYYY-MM-DD 8 Bytes Max datetime2


hh:mm:ss

BASES DE DATOS
GUÍA #3 – CICLO 01/2019

investigar que mejoras tienen DATETIME2 con respecto a DATETIME

BASES DE DATOS

También podría gustarte