38
IMPLEMENTACIÓN DE BASES DE DATOS M.C. OMAR JASSO L.

Unidad 1 DDL

Embed Size (px)

Citation preview

Page 1: Unidad 1 DDL

IMPLEMENTACIÓN DE

BASES DE DATOS

M.C. OMAR JASSO L.

Page 2: Unidad 1 DDL

M.C. OMAR JASSO L.

TEMARIO

Parte 1. Introducción a SQL Server

1.1 Introducción a SQL Server

1.2 Instalación

1.3 Herramientas de SQL Server

1.4 Configuración

Parte 2. Programación con SQL Server

2.1 Conceptos básicos de bases de datos

2.2 Introducción a Transact-SQL

2.3 Creación de bases de datos

2.4 Creación de tablas

2.5 Introducción a la integridad de datos

2.6 Vistas

2.7 Conceptos de programación

2.7.1 Procedimientos almacenados

2.7.2 Funciones

2.7.3 Disparadores (triggers)

IMPLEMENTACIÓN DE BASES DE DATOS

Page 3: Unidad 1 DDL

M.C. OMAR JASSO L.

TEMARIO

Parte 2. . . ..

2.10 Índices

2.11 Cursores

2.12 Análisis de desempeño

2.13 Transacciones

2.14 Usuarios

Parte 3. Administración de SQL Server

3.1 Seguridad

3.2 Servicios de transformación de datos

3.3 Respaldos

3.4 Recuperación

3.5 Monitoreo

IMPLEMENTACIÓN DE BASES DE DATOS

Page 4: Unidad 1 DDL

M.C. OMAR JASSO L.

Referencias bibliográficas:

•Sql Server 2005, Charte, Francisco (ANAYA MULTIMEDIA), 336 páginas, Español, ISBN: 8441520283. ISBN-13: 9788441520288

•Mysql Avanzado, Jeremy D. Zawodny (ANAYA MULTIMEDIA), Español, ISBN: 8441517592. ISBN-13: 9788441517592

IMPLEMENTACIÓN DE BASES DE DATOS

Page 5: Unidad 1 DDL

M.C. OMAR JASSO L.

CRITERIOS DE EVALUACIÓN

Cuestionario (Ev. Conocimientos) 40%Tareas (Ev. desempeño) 30%Proyecto (Ev. producto) 20%Participación (Ev. actitud) 10%

IMPLEMENTACIÓN DE BASES DE DATOS

Page 6: Unidad 1 DDL

M.C. OMAR JASSO L.

REGLAS DEL CURSO

No introducir alimentos o bebidas en el aula/laboratorio

No usar celular dentro del aula

Colocar su mochila en los espacios habilitados para tal resguardo

No usar el equipo de cómputo hasta no haber recibido indicación para tal efecto

Cuando se permita el uso de los equipos de cómputo, prohibido el uso del mismo para asuntos ajenos a la clase, especialmente:

redes sociales

servicios de mensajería

juegos

Acudir a tiempo a la clase

Dejar basura en el aula/espacio de trabajo

Desconectar equipo de cómputo del laboratorio para conectar portátiles

Cualquier incumplimiento con las reglas del curso será sancionado. EVITALO!

IMPLEMENTACIÓN DE BASES DE DATOS

Page 7: Unidad 1 DDL

M.C. OMAR JASSO L.

IMPORTANCIA DE LAS BASES DE DATOS

IMPLEMENTACIÓN DE BASES DE DATOS

Page 8: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

BD en la medicina y ámbitos de

la salud….

IMPLEMENTACIÓN DE BASES DE DATOS

Page 9: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en la mercadotecnia ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 10: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en las finanzas ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 11: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en el área social y

comunicaciones ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 12: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en la banca ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 13: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en el gobierno ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 14: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… BD en aplicaciones específicas ..

IMPLEMENTACIÓN DE BASES DE DATOS

Page 15: Unidad 1 DDL

M.C. OMAR JASSO L.

¿PORQUÉ SON IMPORTANTES LAS BASES DE DATOS?

… las bases de datos están en todos aquellos sistemas deinformación donde se requiera tener un registro de susoperaciones o se requiera almacenar información para unposterior estudio …

IMPLEMENTACIÓN DE BASES DE DATOS

Page 16: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

SQL Server es un conjunto de objetos eficientemente almacenados. Los objetos

donde se almacena la información se denominan tablas, y éstas a su vez están

compuestas de filas y columnas.

En el centro de SQL Server está el motor de SQL Server, el cual procesa los

comandos de la base de datos. Los procesos se ejecutan dentro del sistema

operativo y entienden únicamente de conexiones y de sentencias SQL.

SQL Server incluye herramientas para la administración de los recursos que ella

computadora nos proporciona y los gestiona para un mejor rendimiento de la

base de datos.

¿Qué es el SQL Server?

Page 17: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Una buena instalación y configuración de SQL Server, y sobre todo una buena

administración de las herramientas que éste nos proporciona, logrará:

• Qué las consultas que se realicen mediante sentencias SQL obtengan un

tiempo de respuesta óptimo.

• Qué la memoria y la CPU de la máquina estén aprovechadas al máximo

¿Qué es el SQL Server?

Page 18: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Transact-SQL es el lenguaje que utiliza SQL Server para poder enviar peticiones

tanto de consultas, inserciones, modificaciones, y de borrado a las tablas, así

como otras peticiones que el usuario necesite sobre los datos.

En definitiva, es un lenguaje que utiliza SQL Server para poder gestionar los

datos que contienen las tablas.

El lenguaje estándar SQL (Structured Query Language) se emplea para los

sistemas de bases de datos relacionales RDBMS (Relational Database

Management System), es el estándar ANSI (American National Standards

Institute).

También es utilizado por otros sistemas como: Oracle, Access, Sybase, etc..

¿Qué es el Transact-SQL?

Page 19: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

La plataforma de datos SQL Server incluye las siguientes herramientas:

•Base de datos relacional: Un motor de base de datos relacional más segura,

confiable, escalable y altamente disponible con mejor rendimiento y compatible

para datos estructurados y sin estructura (XML).

•Servicios de réplica: Réplica de datos para aplicaciones de procesamiento de

datos distribuidas o móviles, alta disponibilidad de los sistemas, concurrencia

escalable con almacenes de datos secundarios para soluciones de información

empresarial e integración con sistemas heterogéneos, incluidas las bases de

datos Oracle existentes.

•Notification Services: Capacidades avanzadas de notificación para el

desarrollo y el despliegue de aplicaciones escalables que pueden entregar

actualizaciones de información personalizadas y oportunas a una diversidad de

dispositivos conectados y móviles

Herramientas de SQL Server

Page 20: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

•Integration Services: Capacidades de extracción, transformación y carga

(ELT) de datos para almacenamiento e integración de datos en toda la empresa.

•Analysis Services: Capacidades de procesamiento analítico en línea (OLAP)

para el análisis rápido y sofisticado de conjuntos de datos grandes y complejos,

utilizando almacenamiento multidimensional.

•Reporting Services: Una solución global para crear, administrar y

proporcionar tanto informes tradicionales orientados al papel como informes

interactivos basados en la Web.

•Herramientas de administración: SQL Server incluye herramientas

integradas de administración para administración y optimización avanzadas de

bases de datos, así como también integración directa con herramientas tales

como Microsoft Operations Manager (MOM) y Microsoft Systems Management

Server (SMS). Los protocolos de acceso de datos estándar reducen

drásticamente el tiempo que demanda integrar los datos en SQL Server con los

sistemas existentes.

Herramientas de SQL Server

Page 21: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

•Herramientas de desarrollo. SQL Server ofrece herramientas integradas de

desarrollo para el motor de base de datos, extracción, transformación y carga de

datos, minería de datos, OLAP e informes que están directamente integrados

con Microsoft Visual Studio para ofrecer capacidades de desarrollo de

aplicación de extremo a extremo. Cada subsistema principal en SQL Server se

entrega con su propio modelo de objeto y conjunto de interfaces del programa

de aplicación (API) para ampliar el sistema de datos en cualquier dirección que

sea específica de su negocio.

Herramientas de SQL Server

Page 22: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Existen dos tipos de comandos SQL:

•DDL que permiten crear y definir nuevas bases de datos, campos e índices.

•DML que permiten generar consultas para ordenar, filtrar y extraer datos de la

base de datos.

Comandos DDL

•CREATE Utilizado para crear nuevas tablas, campos , índices, procedimientos,

funciones, etc.

•DROP Empleado para eliminar tablas, campos , índices, procedimientos,

funciones, etc.

•ALTER Utilizado para modificar las tablas, campos , índices, procedimientos,

funciones, etc.

Comandos

Page 23: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Comandos DML

•SELECT Utilizado para consultar registros de la base de datos que satisfagan

un criterio determinado

•INSERT Utilizado para cargar lotes de datos en la base de datos en una única

operación.

•UPDATE Utilizado para modificar los valores de los campos y registros

especificados

•DELETE Utilizado para eliminar registros de una tabla de una base de datos

Comandos

Page 24: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Las cláusulas son condiciones de modificación utilizadas para definir los datos

que desea seleccionar o manipular

•FROM Utilizada para especificar la tabla de la cual se van a seleccionar los

registros

•WHERE Utilizada para especificar las condiciones que deben reunir los

registros que se van a seleccionar

•GROUP BY Utilizada para separar los registros seleccionados en grupos

específicos

•HAVING Utilizada para expresar la condición que debe satisfacer cada grupo

•ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con

un orden específico

Cláusulas

Page 25: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

•AND Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad

sólo si ambas son ciertas.

•OR Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdad si

alguna de las dos es cierta.

•NOT Negación lógica. Devuelve el valor contrario de la expresión.

Operadores lógicos

Page 26: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

< Menor que

> Mayor que

<> Distinto de

<= Menor o igual que

>= Mayor o igual que

= Igual que

BETWEEN Utilizado para especificar un intervalo de valores.

LIKE Utilizado en la comparación de un modelo

In Utilizado para especificar registros de una base de datos

Operadores de comparación

Page 27: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Las funciones de agregado se usan dentro de una cláusula SELECT en grupos

de registros para devolver un único valor que se aplica a un grupo de registros.

•AVG Utilizada para calcular el promedio de los valores de un campo

determinado

•COUNT Utilizada para devolver el número de registros de la selección

•SUM Utilizada para devolver la suma de todos los valores de un campo

determinado

•MAX Utilizada para devolver el valor más alto de un campo especificado

•MIN Utilizada para devolver el valor más bajo de un campo especificado

Funciones de agregado

Page 28: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

CREATE DATABASE database_name

[ ON

{ [ PRIMARY ] [ <filespec> [ ,...n ]

[ , <filegroup> [ ,...n ] ]

[ LOG ON { <filespec> [ ,...n ] } ] }

] [ COLLATE collation_name ]

[ WITH <external_access_option> ]

]

Ejemplo:

CREATE DATABASE ejemplo;

CREATE DATABASE ejemplo2

COLLATE Latin1_General_CI_AI;

Como crear una BD

Page 29: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

DROP DATABASE database_name

Ejemplo:

DROP DATABASE ejemplo;

Como eliminar una BD

Page 30: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

CREATE SCHEMA schema_name_clause [ <schema_element> [ ...n ] ]

<schema_name_clause> ::=

{ schema_name

| AUTHORIZATION owner_name

| schema_name AUTHORIZATION owner_name

}

<schema_element> ::=

{

table_definition | view_definition | grant_statement |

revoke_statement | deny_statement

}

Ejemplo:

CREATE SCHEMA ventas AUTHORIZATION omar

Como crear un Esquema

Page 31: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

CREATE LOGIN loginName { WITH <option_list1> | FROM <sources> }

<option_list1> ::=

PASSWORD = { 'password' | hashed_password HASHED } [ MUST_CHANGE ]

[ , <option_list2> [ ,... ] ]

<option_list2> ::=

SID = sid

| DEFAULT_DATABASE =database

| DEFAULT_LANGUAGE =language

| CHECK_EXPIRATION = { ON | OFF}

| CHECK_POLICY = { ON | OFF}

| CREDENTIAL =credential_name <sources> ::= WINDOWS [ WITH

<windows_options>[ ,... ] ]

| CERTIFICATE certname

| ASYMMETRIC KEY asym_key_name<windows_options> ::=

DEFAULT_DATABASE =database

| DEFAULT_LANGUAGE =language

Como crear un Inicio de sesión

Page 32: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Ejemplo: Crear inicio de sesión con contraseña

CREATE LOGIN JassoO WITH PASSWORD='universidad‘

Ejemplo: Crear inicio de sesión con contraseña y BD por defecto

CREATE LOGIN JassoO WITH PASSWORD='universidad',

default_database=northwind

*Para borrar un inicio de sesión

DROP LOGIN JassoO

Como crear un Inicio de sesión

Page 33: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

CREATE USER user_name [ { { FOR | FROM }

{

LOGIN login_name

| CERTIFICATE cert_name

| ASYMMETRIC KEY asym_key_name

}

| WITHOUT LOGIN ]

[ WITH DEFAULT_SCHEMA = schema_name ]

Ejemplo:

USE northwind

CREATE USER omar FOR LOGIN JassoO

•Para eliminar usuario

DROP USER omar

Como crear un Usuario

Page 34: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

CREATE TABLE

[ database_name . [ schema_name ] . | schema_name . ]

table_name

( { <column_definition> |)

<column_definition> ::=

column_name <data_type>

[ COLLATE collation_name ]

[ NULL | NOT NULL ]

[

[ CONSTRAINT constraint_name ]

DEFAULT constant_expression ] |

[ IDENTITY [ ( seed ,increment ) ] [ NOT FOR REPLICATION ]

]

[ ROWGUIDCOL ] [ <column_constraint> [ ...n ] ] [ SPARSE ]

Como crear un tabla

Page 35: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

create table ventas.tabla1

(

Id int not null,

fecha date,

precio money not null,

constraint tbl_Id primary key (Id)

)

Como crear una tabla

Page 36: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

create table ventas.tabla2

(

Id int not null primary key,

fecha date,

precio money not null

)

Como crear una tabla

Page 37: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS

Sintaxis:

create table ventas.tabla3

(

Id int not null primary key identity(1,1),

fecha date,

precio money not null,

idproducto int,

CONSTRAINT FK_uno FOREIGN KEY (idproducto) REFERENCES

producto (cve_producto)

)

Como crear una tabla

Page 38: Unidad 1 DDL

M.C. OMAR JASSO L. IMPLEMENTACIÓN DE BASES DE DATOS