Sunteți pe pagina 1din 38

SQL SERVER

Curso de SQL Server nivel bsico

LUIS MIGUEL CHUQUI CHICAIZA fono: 0998573200


Que es una base de datos
es una entidad en la cual se pueden almacenar datos de manera
estructurada, con la menor redundancia posible.
A continuacin se presentan las caractersticas principales que
puede tener una base de datos
Concurrencia, Cualquier usuario que tenga acceso puede
obtener, modificar o eliminar los datos.
Integridad, ningn dato se puede daar o la misma informacin
se debe presentar a todos los usuarios que estn realizado las
consultas
Seguridad, debe permitir administrar los usuarios para el nivel de
acceso a la informacin
SQL Server
SQL (Lenguaje de consulta estructurado) server es un motor
de base de datos desarrollado por Microsoft, El lenguaje de
desarrollo utilizado (por lnea de comandos o mediante la
interfaz grfica de Management Studio) es Transact-SQL
(TSQL), una implementacin del estndar ANSI del lenguaje
SQL, utilizado para manipular y recuperar datos, crear tablas
y definir relaciones entre ellas.
Lenguaje de definicin de datos DDL
Grupo de sentencias del SQL que soportan la definicin y
declaracin de los objetos de la base de datos. Objetos tales
como: la base de datos misma(DATABASE), las tablas(TABLE),
las Vistas (VIEW), los ndices (INDEX), los procedimientos
almacenados (PROCEDURE), los disparadores (TRIGGER).
Las sentencias utilizadas son: CREATE (crea cualquier tabla,
base de datos), ALTER (modifica un objeto, tabla o base de
datos) y DROP (elimina un objeto, tabla o base de datos)
Lenguaje de manipulacin de datos
DML
Grupo de sentencias del SQL para manipular los datos que
estn almacenados en las bases de datos, a nivel de filas
(tuplas) y/o columnas (atributos). Ya sea que se requiera que
los datos sean modificados, eliminados, consultados o que se
agregaren nuevas filas a las tablas de las base de datos.
Las sentencias utilizadas son : INSERT (inserta un registro),
UPDATE (modifica uno o varios registros), DELETE (elimina
uno o varios registros) y SELECT (muestra uno o varios
registros)
Lenguaje de control de datos DCL
Grupo de sentencias del SQL para controlar las funciones de
administracin que realiza el DBMS, tales como la
atomicidad y seguridad.
COMMIT TRANSACTION (acepta el cambio, ingreso o
eliminacin),ROLLBACK TRANSACTION (regresa los datos a su
opcin inicial, antes de ejecutar), GRANT (concede permisos)
y REVOKE (quita permisos)
Versiones SQL
Versin Descripcin
Contempla todas las caractersticas (deshabilitadas en otras ediciones).Es el tipo de
Enterprise versin con ms privilegios existente en el mercado.
Una versin limitada segn la configuracin del servidor y sus caractersticas,
Standard diseada para servidores inferiores.
Por ejemplo: en la versin 2012, la edicin Enterprise soporta un nmero ilimitado
de procesadores, y la agregacin de memoria y CPUs en caliente sin la interrupcin
del servicio o del servidor; mientras la edicin Standard esta limitada a 16
procesadores y no soporta la "agregacin en caliente".
Una versin gratuita que posibilita la creacin de bases de datos limitadas con
Express caractersticas bsicas, con el fin de apoyar aplicaciones que necesiten una solucin
simple para almacenamiento de una cantidad limitada de datos, o usuarios que sus
recursos y necesidades son limitados.
En la versin 2012, esta edicin puede utilizar un mximo de 1 GB de memoria, y
almacenar no ms de 10GB, funciona en servidores con un nmero mximo de
cuatro procesadores. Estas limitaciones se mantienen en la versin 2014 (4 cores,
1GB ram, y 10Gb por base de datos).
Base de dato relacional
Es un tipo de base de datos (BD) que cumple con el modelo relacional (el modelo ms
utilizado actualmente para implementar las BD ya planificadas). El modelo relacional,
para el modelado y la gestin de bases de datos, es un modelo de datos basado en la
lgica de predicados y en la teora de conjuntos.
Caractersticas
Una base de datos se compone de varias tablas o relaciones.
No pueden existir dos tablas con el mismo nombre ni registro.
Cada tabla es a su vez un conjunto de campos (columnas) y registros (filas).
La relacin entre una tabla padre y un hijo se lleva a cabo por medio de las claves
primarias y claves forneas (o ajenas).
Las claves primarias son la clave principal de un registro dentro de una tabla y estas
deben cumplir con la integridad de datos.
Las claves ajenas se colocan en la tabla hija, contienen el mismo valor que la clave
primaria del registro padre; por medio de estas se hacen las formas relacionales.
MODELO ENTIDAD-RELACIN (ER)
El modelo entidad-relacin ER es un modelo de datos que permite
representar cualquier abstraccin, percepcin y conocimiento en un
sistema de informacin formado por un conjunto de objetos
denominados entidades y relaciones, incorporando una
representacin visual conocida como diagrama entidad-relacin.
Para proceder con el modelado de un sistema inicial se requiere tener
algunos conceptos bsicos, los cuales se describen a continuacin.
Entidad
La entidad es cualquier clase de objeto o conjunto de elementos
tangible o intangible, en un contexto determinado dado por el
sistema de informacin o las funciones y procesos que se definen en
un plan de automatizacin.
Las entidades constituyen las tablas de la base de datos que permiten
el almacenamiento de los registros del sistema. Por ejemplo, si se
desea almacenar informacin de los estudiantes se debe crear una
tabla que va ser una entidad y que llevar el nombre estudiante
Atributos
Son las caractersticas, rasgos y propiedades de una entidad, es decir,
los atributos de una tabla son en realidad sus campos descriptivos,
cada atributo debe estar asociado un tipo de dato
Siguiendo el ejemplo del estudiante este tiene nombres, apellidos,
sexo, nmero de identificacin
Relaciones
Vnculo que permite definir una dependencia entre los conjuntos de dos o ms entidades. Esto es
la relacin entre la informacin contenida en los registros de varias tablas. Siguiendo el ejemplo
del estudiante un estudiante tiene muchas materias, la relacin hacia la entidad materia seria a
muchas.
A continuacin se presentan los tipos de relaciones que puede existir
Relacin de uno a varios (1,n). Se crea una relacin de uno a varios si uno de los campos
relacionados es una clave principal. Esta relacin es la ms comn. Cada registro de una tabla
puede estar enlazado con varios registros de una segunda tabla, pero cada registro de la segunda
slo puede estar enlazado con un nico registro de la primera.
Relacin de uno a uno (1,1). Se crear una relacin de este tipo si ambos campos relacionados
son claves principales. En este tipo de relacin, un registro de la tabla uno slo puede estar
relacionado con un nico registro de la tabla dos y viceversa. No es muy usada.
Relacin de varios a varios (n,m). En este caso, ninguno de los campos relacionados son claves
principales. Cada registro de la primera tabla puede estar enlazado con varios registros de la
segunda y viceversa. Este tipo de relacin implica la repeticin de los campos de cada tabla; esto
es lo que Access pretende evitar. Para establecer relaciones de este tipo, es necesario crear una
tabla intermedia que est relacionada con las dos de uno a varios.
Ejemplos de tipos de relaciones
Como desarrollar un modelo
relacional
Para poder desarrollar un modelo relacional se debe tener las siguientes
consideraciones
1.- Identificar las entidades, estas entidades pueden ser tangibles o intangibles.
2.- Identificar atributos que tienen cada una de las entidades.
3.- seleccionar las claves candidatas para luego definir las claves primarias
4.- relacionar cada entidad si es necesario.
5.- validar la consistencia en el modelo realizado.
Clave
Es el campo o atributo de una entidad que tiene como objetivo
distinguir cada registro del conjunto, sirviendo sus valores como datos
vinculantes de una relacin entre registros de varias tablas.
Superclave. Es la combinacin de campos clave que identifican
unvocamente un registro en una tabla o entidad.
Clave principal o primaria. Permiten identificar unvocamente cada
registro de una tabla.
Clave candidata. Campos que cumplen las condiciones de identificacin
nica de registros, pero que no fueron definidos como principales por el
diseador.
Clave externa. Campo clave conformado por el valor de una clave
principal primaria de otra tabla.
Tipos de datos SQL Server
Tipo de tamao
dato
Los tipos de datos Microsoft Access SQL de BINARY 1 byte por carcter
motor de base de datos consisten en 13 tipos de
BIT 1 byte
datos principales definidos por el motor de base
de datos de Microsoft Access y varios sinnimos TiNYINT 1 byte

vlidos reconocidas para estos tipos de datos. MONEY 8 byte

Adicional a estos tipos de datos se pueden DATETIME 8 byte

utilizar tipos de datos compuestos tales como REAL 4 byte


nvarchar, varchar, ntext, image. FLOAT 8 byte

Vase en la siguiente direccin SMALLINT 2 byte

https://msdn.microsoft.com/es- INTEGER 4 byte


es/library/ms187752.aspx DECIMAL 17 byte

TEXT 2 byte por carcter

CHAR 2 byte por carcter


Ejercicio
Realizar un modelo entidad relacin de registros de asistencias de alumnos,
los datos a guardar son los siguientes: nombre del alumno, nmero de
documento, nombres y apellidos y los das de asistencia, si el alumno no ha
asistido a clases se debe colocar una bandera de indicacin.
Se desea almacenar la informacin de pelculas. Cada pelcula, necesitas su
ttulo, ao, nacionalidad y algunos datos de su director: el nombre, la fecha de
nacimiento y su pas de origen. Adems, se quiere saber su idioma, si tiene
alguna restriccin de edad, un resumen. La ficha tcnica de cada pelcula
tambin debe incluir el reparto de actores, donde aparecer su nombre, su
nacionalidad.
IDE SQL Server
A continuacin se presenta el IDE de administracin y desarrollo del SQL
server que utilizaremos para realizar las prcticas y actividades en el
transcurso del curso
Barras de mens, contienen las opciones para permitir la administracin
de la base de datos
Explorador de objetos, Contiene la administracin de las bases de datos
entre los principales se puede citar acceso a las bases y administracin
de usuarios que utilizan la base de datos
bulkadmin, pueden ejecutar la sentencia bulk
insert.
dbcreator, los miembros de esta opcin pueden
crear, modificar o borrar la base de datos
Lista las bases de datos diskadmin, utilizado para administrar los archivos
que posee la instancia del disco
processadmin, pueden finalizar los procesos que
se ejecutan en la instancia.
public, permite que el objeto este disponible a
Lista los usuarios que todos, slo asigne permisos pblicos a cualquier
estn registrados en la objeto cuando desee que el objeto est disponible
instancia. para todos los usuarios.
securiryadmin, gestionan los inicios de sesin y
sus propiedades. Pueden conceder, negar y
rechazar los permisos a nivel de servidor.
Lista los perfiles que estn serveradmin, pueden cambiar las opciones de
registrados en la instancia configuracin de todo el servidor y cerrar el
servidor.
setupadmin, pueden agregar y eliminar servidores
enlazados mediante instrucciones Transact-SQL.
sysadmin, puede realizar cualquier actividad en el
servidor
COMANDOS DE ADMINISTRACIN
A continuacin se presentan algunos comandos tiles para la administracin
del sistema, para mostrar los registros se debe utilizar la sentencia SELECT
En el sys.database se puede encontrar todos los objetos que contiene la base de
datos pertenecientes a la instancia
SELECT *
FROM sys.databases ;
Sys.sysusers muestra todos los usuarios que pertenecen a la instancia
SELECT *
FROM sys.sysusers ;
Select - DML
Esta sentencia permite realizar la bsqueda de registros entre una tabla o
varias tablas
Para realizar una consulta se debe obtener la siguiente estructura

SELECT [columnas] FROM [nombre tabla] WHERE [condicin]


Si deseamos unir varias tablas en nuestra consulta se debe utilizar la opcin
INNER JOIN colocando SELECT [columnas] FROM [tabla uno] INNER JOIN [tabla
dos] ON [tablaUno.pk] = [tablaDos.pk]
Tipos de funciones en SQL usados
Existen muchas funciones que se pueden utilizar en SQL server, por lo que en
este tema se tratar unos cuantos que nos ayudar a realizar nuestras
consultas
Nombre Funcin Descripcin
AVG Permite obtener un promedio de las columnas
SUM Permite realizar la suma de los valores
COUNT Realiza el conteo de filas, si la columna seleccionada tiene el valor NULL, no realiza la cuenta
MAX, MIN Obtiene el valor mximo y obtiene el valor mnimo.
LEN Obtiene el nmero de caracteres que posee la columna o una variable
SUBSTRING Permite realizar el corte en la cadena de caracteres su sintaxis es SUBSTRNG(<dato>,inicio,fin)
LTRIM Elimina los espacios en blanco a la izquierda que pueda tener una cadena
RTRIM Elimina los espacios en blanco a la derecha que pueda tener una cadena
CAST Realiza una conversin de datos CAST(<dato> as <tipo de dato> )
CONVERT Realiza la conversin de datos CAST(<tipo de dato>,<dato>)
Select con inner join
Vista
Una vista es una consulta en la cual puede agrupar varios tablas, y al
momento de realizar la llamada se la puede tratar como una sola tabla; al
igual que una tabla se la puede aplicar filtros, order by u otros operadores que
hemos utilizado
Para crear una vista debemos utilizar la siguiente sintaxis

Para utilizarla se debe llamar a la vista a travs de un select


Create database - DDL
Esta opcin nos permite crear una base de datos, tabla, vista, procedimiento
almacenado, trigger
A continuacin se procede a mostrar la estructura de creacin de una base de
datos

NOTA: en este ejemplo se ha indicado donde se desea guardar la nueva base de


datos, pero si no colocamos ningn path y solo colocamos la primera lnea por
defecto se crear en la carpeta por defecto de SQL Server
CREACION DE TABLAS
Se pueden crear dos tipos de tablas, tablas temporales y tablas fijas. Para crear una tabla
en primer lugar se debe tener definido la estructura de la tabla con las claves primarias, o
forneas (externos) que pude tener, y sus respectivas restricciones que posea las
columnas
CREATE TABLE [nombre Tabla] (
Las columnas que posee las tablas indicando la clave primaria (primary key), cada
columna debe ser separada por una coma
)
Relacin con claves externas
En SQL permite establecer las relaciones, entre tablas utilizando una palabra clave a lado
de la columna como se indica en la siguiente figura.
Restriccin de valores nicos
Se puede realizar una restriccin de valores mediante dos opciones, la primera es
asignado a la columna el valor de clave primaria o el segundo caso es creando una
restriccin para que el valor de la columna sea nico en la tabla.
Relacin con Contraints
Un constraint es un objeto delimitador, o si se lo quiere asignar es una regla
Insert
Esta opcin permite realizar el ingreso o insercin de un registro en una tabla, para
realizar esta operacin debemos utilizar la siguiente opcin

En la primera opcin se deben especificar el orden como se va a inserta la informacin


en el registro.
En la segunda opcin se ingresa en el orden como esta definido la tabla en la base de
datos
NOTA: las columnas definidas como identidad no se deben especificar al momento del
ingreso o se deben utilizar la opcin IDENTITY_INSERT para poder realizar la insercin del
registro adicional se debe especificar las columnas que se van a insertar
Update
Permite realizar la actualizacin de uno o varios registros, se recomienda al momento de
utilizar esta opcin se utilice la opcin con el WHERE, si no es usado esta opcin se
actualizar todo el registro de la tabla.
Delete
Esta opcin permite realizar el borrado de registros en nuestra tabla, es recomendable
utilizar esta opcin acompaado de la sentencia WHERE
Procedimientos almacenados
Un procedimiento almacenado es un conjunto de instrucciones u operaciones que realiza
una determinada accin, ya sea esta una consulta (Select),Ingreso de registros (insert),
actualizacin de datos (update) o una eliminacin de datos (delete)
Sintaxis de un procedimiento
almacenado
Triggers o disparadores
Son objetos que se asocian con tablas y se almacenan en la base de datos. Su nombre se
deriva por el comportamiento que presentan en su funcionamiento, ya que se ejecutan
cuando sucede algn evento sobre las tablas a las que se encuentra asociado. Los
eventos que hacen que se ejecute un trigger son las operaciones de insercin (INSERT),
borrado (DELETE) o actualizacin (UPDATE), ya que modifican los datos de una tabla.
Cuando se enva un insert podemos ver la informacin antes de insertar mediante la
utilizacin de una tabla temporal denominada inserted
Cuando se realiza un delete podemos ver la informacin antes de borrar mediante la
utilizacin de la tabla temporal denominada deleted
Cuando se realiza un update la nueva informacin se almacena en la tabla inserted y la
informacin actual se almacena en la tabla deleted
Sintaxis de TRIGGER

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