Sunteți pe pagina 1din 53

MTA-98-364

Database Administration
Fundamentals

Leccin 1: Entendiendo los conceptos medulares de las


bases de datos
Instructor.

Nombre : Frederick Josue Mejia Garcia

Correo : fjcode@gmail.com

MTA-98-364 1
Objetivos

Matriz de dominio de objetivos

Habilidades/Concepto Descripcin del dominio del objetivo

Entendiendo los conceptos de las bases de Entender como se almacena la informacin en


datos tablas

Entendiendo las bases de datos relacionales Entender los conceptos de las bases de datos
relacionales

Entendiendo el lenguaje de manipulacin de Entender el lenguaje de manipulacin de datos


datos (DML)

Entendiendo el lenguaje de definicin de datos Entender el lenguaje de definicin de datos


(DDL)

MTA-98-364 2
Importancia de las bases de datos

Con que frecuencia utilizamos las bases de datos.

MTA-98-364 3
Importancia de las bases de datos
Historia y actualidad

1960 la sustitucin de las cintas magnticas por los BIG DATA


discos duros DATA SCIENCE
Se iniciaron las bd de red y jerrquicas la primera SQL SERVER
generacin
POSTGRESQL
Alianza entre IBM y American Airlines para
MYSQL
desarrollar SABRE y General Electric desarrollo la bd
de red MONDODB
1970 en el articulo Un modelo relacional para ORACLEDB
grandes bancos con un sistema de datos REDIS
compartidos Edgar Codd explico el modelo TRANSACTSQL
relacional e inicio la segunda generacin de gestores
SQL
de base de datos
CODASYL
A partir de Codd Larry Ellison (fundador de ORACLE)
comenz el desarrollo de un lenguaje de consultas EPL
conocido como SQL ETC

MTA-98-364 4
Conceptos bsicos

Antes de hablar de una base de datos necesitaremos tener claros los siguientes
conceptos.

Campo.
Columna.
Fila.
Tabla.
Variable.

MTA-98-364 5
Campo.
Elemento en un registro en el cual est almacenado un tipo de dato en
particular.

Por ejemplo, REGISTRO-EMPLEADO, debera de contener campos para


almacenar Nombre, Apellido, Direccin, Ciudad, Codigo-Postal, Salario-Actual,
Titulo, Departamento y as sucesivamente.

MTA-98-364 6
Los campos individuales son caracterizados por el tamao mximo y el tipo de
dato (alfabtico, numrico, fecha) que puede almacenar dentro de l.

En un sistema gestor de bases de datos relacional (RDMS, Relational database


management system), los campos son llamados columnas.

Campo = Dato = Algn valor.

MTA-98-364 7
Columna.

En un RDMS, es el nombre de un atributo. La coleccin de valores de columna


que forman la descripcin de una entidad particular es llamada tupla o fila.

Una columna es equivalente a un campo en un registro de un sistema de


archivos no relacional.

Una columna es un grupo de elementos que estn listados verticalmente.

MTA-98-364 8
Fila.
Es una serie de elementos dispuestos horizontalmente dentro de algn tipo
de marco.

Por ejemplo, una serie continua de celdas, recorridas de izquierda a derecha


en una hoja de calculo, o un conjunto de valores alineados horizontalmente
en una tabla.

Una fila son un conjunto de elementos que estn dispuestos


horizontalmente.

MTA-98-364 9
Registro.

Es una estructura de datos que consiste en una coleccin de campos o


elementos, cada uno con su propio nombre y tipo.

Un registro es un grupo de campos dispuestos en una fila.

MTA-98-364 10
Tabla.
En un RDMS, es una estructura de datos caracterizada por filas y columnas,
con datos almacenados, o con la capacidad de almacenarlos.

Una tabla es la estructura subyacente de una relacin.

Una tabla es un conjunto de filas y columnas.

MTA-98-364 11
Variable.

Un nombre de variable es la etiqueta que damos a una columna.

Nota: Esta es una definicin diferente de la que puede haber escuchado en


una clase de programacin, en la cual una variable es definida como un lugar
de almacenamiento nombrado con la capacidad de contener datos que
pueden ser modificados durante la ejecucin de un programa.

MTA-98-364 12
Resumen

Nombre de ID de Nombre Grado Seccin


maestro estudiante de
estudiante
Luis Campo
Alejandra Campo
Carlos Campo
Campo
R E G I S T R O

MTA-98-364 13
Base de datos
Una base de datos (DB) es una coleccin organizada de datos, normalmente
almacenada en un formato electrnico.

Esta nos permite ingresar datos, organizarlos y recuperarlos de una manera


eficiente.

Las bases de datos tradicionales estn organizadas en campos, registros y


archivos.

MTA-98-364 14
Comparacin de una base de datos con una hoja de
clculo.

MTA-98-364 15
Tipos de base de datos
Base de datos plana, son consideradas planas porque poseen tablas
bidimensionales que consisten en filas y columnas.

Base de datos jerrquica, su diseo es similar a un rbol estructurado.

En la cual cada padre puede tener mltiples hijos, pero cada hijo puede
tener un solo padre.

MTA-98-364 16
Base de datos relacional, es similar a las bases de datos jerrquicas, ya que
la informacin se almacena en tablas y cualquier nueva informacin es
automticamente agregada en la tabla sin la necesidad de reorganizar la
tabla misma.

Se diferencia de una base de datos jerrquica en que una base de datos


relacional puede tener mltiples padres.

MTA-98-364 17
Base de datos relacional

MTA-98-364 18
Modelo Relacional

Un modelo relacional es un modelo en el cual la informacin est


organizada en relaciones (tablas). Este es el modelo implementado en los
sistemas gestores de bases de datos modernos.

MTA-98-364 19
Elementos fundamentales de una base
de datos moderna

Entradas Datos
Atributos/Campos Caractersticas
Relaciones Como las bases de datos se vinculan

MTA-98-364 20
Query

En una base de datos pueden haber miles de registros, por


tanto, el buscar en una tabla registro por registro para
recuperar la informacin deseada, es infactible.

Para recuperar datos almacenados en una base de datos, se


utilizan los querys (consulta).

MTA-98-364 21
Restriccin (constraints)

Las restricciones son limitantes o reglas que se colocan en un campo o


columna para asegurarnos que los datos que son considerados invlidos
no sean ingresados.

MTA-98-364 22
NOT NULL

En forma predeterminada, una columna puede ser NULL. Si no desea


permitir un valor NULL en una columna, querr colocar una restriccin en
esta columna especificando que NULL no es ahora un valor permitido.

MTA-98-364 23
CREATE TABLE Customer
(SID integer NOT NULL,
Last_Name varchar (30) NOT NULL,
First_Name varchar(30));

Las columnas SID y Last_Name no incluyen NULL, mientras que


First_Name puede incluir NULL.

MTA-98-364 24
UNIQUE

La restriccin UNIQUE asegura que todos los valores en una columna sean
distintos.

MTA-98-364 25
CREATE TABLE Customer
(SID integer Unique,
Last_Name varchar (30),
First_Name varchar(30));

La columna SID no puede incluir valores duplicados, mientras dicha restriccin


no se aplica para columnas Last_Name y First_Name.

Por favor note que una columna que se especifica como clave primaria tambin
puede ser nica. Al mismo tiempo, una columna que es nica puede o no ser
clave primaria.

MTA-98-364 26
CHECK

La restriccin CHECK asegura que todos los valores en una columna


cumplan ciertas condiciones.

MTA-98-364 27
CREATE TABLE Customer
(SID integer CHECK (SID > 0),
Last_Name varchar (30),
First_Name varchar(30));

La columna SID slo debe incluir enteros mayores a 0.

MTA-98-364 28
Clave primaria
La clave primaria se utiliza para identificar en forma nica cada lnea en la tabla.

Una clave primaria puede consistir en uno o ms campos en una tabla. Cuando se
utilizan mltiples campos como clave primaria, se los denomina claves
compuestas.

Las claves primarias pueden especificarse cuando se crea la tabla (utilizando


CREATE TABLE) o cambiando la estructura existente de la tabla (utilizando ALTER
TABLE).

MTA-98-364 29
CREATE TABLE Customer
(SID integer PRIMARY KEY,
Last_Name varchar(30),
First_Name varchar(30));

ALTER TABLE Customer ADD PRIMARY KEY (SID);

Nota: Antes de utilizar el comandoALTER TABLEpara agregar una clave


primaria, necesitar asegurarse de que el campo est definido como 'NOT
NULL' -- en otras palabras, NULL no puede aceptarse como valor para ese
campo.

MTA-98-364 30
Clave externa

Una clave externa es un campo (o campos) que seala la clave primaria de


otra tabla. El propsito de la clave externa es asegurar la integridad
referencial de los datos. En otras palabras, slo se permiten los valores
que se esperan que aparezcan en la base de datos.

MTA-98-364 31
CREATE TABLE ORDERS
(Order_ID integer PRIMARY KEY,
Order_Date datetime,
Customer_SID integer REFERENCES CUSTOMER (SID),
Amount double);

ALTER TABLE ORDERS


ADD FOREIGN KEY (Customer_SID) REFERENCES CUSTOMER (SID);

MTA-98-364 32
ndice

Un ndice es una estructura de datos que brinda velocidad para las


operaciones de recuperacin de datos en una base de datos.

MTA-98-364 33
Relacin uno a uno

Una asociacin entre dos tablas en la cual el valor de la llave primaria de


cada registro en la tabla primaria corresponde al valor de llave fornea de
uno, y slo un registro de la otra tabla relacionada.

MTA-98-364 34
Relacin de muchos a muchos
Asociacin compleja entre dos conjuntos de parmetros, en la cual
muchos parmetros de cada conjunto pueden relacionarse con muchos
otros en el segundo conjunto.

Este tipo de relacin es comnmente usada para describir una asociacin


entre dos tablas en donde un registro de cada tabla puede relacionarse
con muchos registros de la otra tabla

MTA-98-364 35
Relacin uno a muchos
La relacin de uno a muchos es el tipo de relacin ms comn que
podemos encontrarnos.
En las relaciones de este tipo cada registro de la tabla principal, puede
tener mas de un registro enlazado a una tabla secundaria.
Pero cada registro de la tabla secundaria solo puede tener un registro
enlazado en la principal.
Esta relacin es comnmente denominada Relacin Padre/Hijo, donde la
tabla principal es el padre y la tabla secundaria se denomina hijo.

MTA-98-364 36
Servidor de base de datos

Las bases de datos normalmente se encuentran en un servidor de base de


datos, al cual puede ser accedido por mltiples usuarios, y proveer un alto
nivel de rendimiento.

Un servidor de base de datos popular es SQL Server.

MTA-98-364 37
Archivos de las bases de datos
Microsoft SQL Server usa tres tipos de datos para almacenar una base de
datos:

Archivos de datos primarios, con extensin .mdf, los cuales contienen


objetos definidos por los usuarios, como por ejemplo, tablas y vistas.
Archivos de datos secundarios, con extensin .ndf, ubicados en discos
duros fsicamente separados para dar mayor capacidad de
almacenamiento.
Archivos de registro transaccional, con extensin .ldf, estos no contienen
objetos.
MTA-98-364 38
Sistema gestor de base de datos
(DBMS)
La mayora de los usuarios no acceden directamente a una base de datos.
Un sistema gestor de base de datos sirve para acceder de manera
indirecta a una base de datos.
El DBMS es una coleccin de programas que permite entrar, organizar, y
seleccionar datos en una base de datos.

MTA-98-364 39
SQL Server Management Studio (SSMS)

La principal caracterstica de SSMS es el explorador de objetos, el cual


permite que a los usuarios buscar, seleccionar y administrar los objetos
dentro del servidor.

MTA-98-364 40
SQL Server Management Studio (SSMS)

MTA-98-364 41
Query Analizer
SSMS incluye el Query Analizer el cual provee una interfaz grfica para escribir y ejecutar
querys o consultas, El Query Analizer soporta los siguientes lenguajes:

XQuery es un lenguaje de programacin y consultas, que fue diseado para consultar


colecciones de datos XML.
SQLCMD es una aplicacin de lnea de comandos que viene incluido con Microsoft SQL
Server, el cual permite consultas SQL escritas para ser ejecutadas desde la lnea de
comandos de Windows.
Transact-SQL es la principal herramienta para la programacin y administracin de bases
de datos en SQL Server. Cuando utiliza SSMS para realizar una accin o tarea, usted est
ejecutando comandos Transact-SQL.

MTA-98-364 42
Obtencin de SQL Server

Microsoft SQL Server Express es una edicin gratuita y llena de caractersticas de


SQL Server, ideal para aprender, desarrollar y fortalecer las aplicaciones de
escritorio, de servidores web y pequeos y para la redistribucin por parte de
fabricantes de software independiente.

Para descargar SQL Server Express 2012, podemos hacerlo desde la pgina oficial:

http://www.microsoft.com/es-es/download/details.aspx?id=29062

MTA-98-364 43
Paquetes disponibles
En la pgina oficial de descargas podemos obtener diferentes paquetes dependiendo de
nuestras necesidades:

Express (SQLEXPR)
Express con herramientas (SQLEXPRWT)
SQL Server Management Studio Express (SQLManagementStudio)
Express con Advanced Services (SQLEXPRADV)
LocalDB (SqlLocalDB)

MTA-98-364 44
Express (SQLEXPR)

La edicin Express incluye solo el motor para bases de datos de SQL Server.
Se presta mejor para aceptar conexiones remotas y para la administracin
remota.

MTA-98-364 45
Express con herramientas (SQLEXPRWT)

Este paquete contiene todos los elementos necesarios para instalar y


configurar SQL Server como un servidor de base de datos e incluye la versin
completa de SQL Server Management Studio. Elija entre LocalDB o Express,
segn sus necesidades.

MTA-98-364 46
SQL Server Management Studio Express
(SQLManagementStudio)

Esta versin no contiene la base de datos, sino solo las herramientas para
administrar instancias de SQL Server, como LocalDB, SQL Express, SQL Azure,
etc. sela si ya cuenta con la base de datos y solo necesita las herramientas
de administracin.

MTA-98-364 47
Express con Advanced Services
(SQLEXPRADV)

Este paquete contiene todos los componentes de SQL Server Express, inclusive
la versin completa de SQL Server Management Studio. Esta es una descarga
de mayor tamao que la que viene con herramientas, puesto que tambin
incluye las funciones de bsqueda de texto completo y Reporting Services.

MTA-98-364 48
LocalDB (SqlLocalDB)
LocalDB es una versin ligera de Express que cuenta con todas las
caractersticas de programacin, pero se ejecuta en modo usuario y tiene
una instalacin rpida sin configuracin y una lista reducida de requisitos
previos. sela si necesita una forma sencilla de crear y trabajar con bases de
datos desde el cdigo. Se puede agrupar con otras herramientas de
desarrollo de aplicaciones y bases de datos, como Visual Studio, o insertar
en una aplicacin que necesite bases de datos locales.

MTA-98-364 49
Lenguaje de manipulacin de datos
(DML)
SELECT : Recupera registros de la base de datos y permite la seleccin de uno o ms
registros, o columnas de una o ms tablas en SQL Server.
INSERT: Agrega uno o ms nuevos registros a una tabla o vista en SQL Server.
UPDATE: Cambia los datos existentes en una o ms columnas en una tabla o vista.
DELETE: Elimina registros de una tabla o una vista.
MERGE: Realiza operaciones de insercin, actualizacin o eliminacin en una tabla objetivo
basado en los resultados de un JOIN con una tabla origen.

MTA-98-364 50
Lenguaje de definicin de datos (DDL)
Lenguaje de definicin de datos (DDL) es un subconjunto de el lenguaje Transact-SQL.
Permite crear objetos de la base de datos como tablas, restricciones y procedimientos
almacenados.

Algunos de los comandos DDL son:

USE: Cambia el contexto de la base de datos.


CREATE: Crea un nuevo objeto de base de datos (Tabla, Vista o Procedimiento almacenado).
ALTER: Cambia un objeto existente.
DROP: Elimina un objeto de la base de datos.

MTA-98-364 51
Tablas de sistema
Las vistas del sistema pertenecen al esquema sys. Algunas de estas tablas son:
sys.Tables
sys.Columns
sys.Databases
sys.Constraints
sys.Views
sys.Procedures
sys.Indexes
sys.Triggers
sys.Objects

MTA-98-364 52
Tema

Gracias

MTA-98-364 53

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