You are on page 1of 30

BASE DE DATOS AVANZADO I

CUARTO CICLO

Agenda

Logros de la Unidad
Manejo de una base de datos
Manejo de los archivos de base de datos
Manejo de Schemas

Base de Datos
Logro
Al trmino de la sesin, el alumno crea y
maneja una base de datos y sus
esquemas; adems crea e implementan
tablas de base de datos para almacenar
los datos de un proceso de negocio real.

Bases de Datos
UNIDAD 1. Base de Datos y Tablas

BASE DE DATOS

Qu es una Base de Datos?


Se define una base de datos como un conjunto de datos
organizados y relacionados entre s, los cuales son
recolectados y explotados por los sistemas de informacin
de una empresa.

Sistema de Gestin de Base de


Datos

Es un software muy especfico, dedicado a servir de


interfaz entre la base de datos, el usuario y las
aplicaciones que la utilizan. Se compone de un lenguaje
de definicin de datos, de un lenguaje de manipulacin de
datos y de un lenguaje de consulta.

SQL Server 2012

SQL Server es un Administrador para Bases de Datos


relacionales basadas en la arquitectura Cliente /
Servidor (RDBMS) que usa Transact SQL para mandar
peticiones entre un cliente y el SQL Server.

Transact - SQL
Es el lenguaje de programacin usado para SQL Server.
Permite:
Tener acceso a la informacin
Realizar bsquedas
Actualizar y administrar sistemas de bases de datos
Relacionales

Autenticacin en SQL Server

AUTENTICACIN

Grupo
Grupooousuario
usuario
de
deWindows
WindowsServer
Server

O BIEN

Cuenta
Cuentade
deinicio
iniciode
de
sesin
de
SQL
Server
sesin de SQL Server

Windows Server

SQL Server
comprueba la
conexin de confianza
SQL
Server

SQL Server
comprueba el nombre
y la contrasea

Conexin en SQL Server

servidor
Autenticaci
n

Usuario

sql
Password del
Usuario

Tipos de Base de Datos en SQL


Server

Bases de datos del sistema


master
model

tempdb

msdb

pubs

Northwind

User1

Bases de datos de usuario

distribution

Estructura de Base de Datos en SQL Server

Archivo de datos

Archivo fsico donde se


almacenan los datos de
manera permanente.

Archivo de registro
Archivo fsico donde se
almacena los datos
temporalmente

Consideraciones ubicacin
Tipos de archivos
Archivos de datos
Primario (*.MDF)
Secundario (*.NDF)

Archivo de registro(*.LDF)

Ubicacin de los archivos


Ubicar los archivos en diferentes disco
para mejora en el desempeo

Almacenamiento de datos
Archivos de datos

Almacenamiento de datos
Archivo de Registro

Creacin de la Base de Datos

CREATE DATABASE database_name


[ ON
[ PRIMARY ] [ filespec [, n] ]
[ FILEGROUP filegroup_name [DEFAULT]
filespec [, n] ] [, n] ]
[ LOG ON
[filespec [, n] ]
[ COLLATE collation_name ] ]

Creando una Base de Datos (por defecto)


Create Database BD_Negocios

PRIMARY
BD_Negocio.md
f
(Archivo de
datos)

BD_Negocio_log
.ldf
(Archivo de
Log)

Creando una Base de Datos


(personalizada)
Create Database BD_Negocios2
On (
Name = ' BD_Negocios2_Data',
Filename = 'D:\Data\BD_Negocios2_Data.mdf',
Size = 5MB,
PRIMARY
Maxsize = 15MB,
BD_Negocios2_Data.md
Filegrowth = 50%
f
(Archivo de datos)
)
Log on (
BD_Negocios2_Log.ldf
(Archivo de Log)
Name = 'BD_Negocios2_Log',
Filename = 'D:\Data\BD_Negocios2_Log.ldf',
Size = 4MB,
Maxsize = 8MB,
Filegrowth = 2MB
)

Qu son los Filegroups?

Son una capa intermedia de objetos, que se encargan


de "mapear" cada archivo de datos/log a un
determinado archivo de base de datos.
De hecho cuando creamos una nueva tabla (entre otros
objetos), podemos indicarle en que FILEGROUP ser
creado el objeto mediante la clausula ON, sino
indicamos ningn FILEGROUP los objetos son creados
en el FILEGROUP por defecto.

Creando una Base de Datos (Filegroups)

Create
Database
BD_Ciber
On
PRIMARY (file.mdf )
FILEGROUP Ciber_Hist
(file.ndf ),
( file.ndf)

Creando una Base de Datos (Filegroups)

Create Database BD_Ciber


On
PRIMARY
(NAME=Ciber_Data,FILENAME='C:\SQL\Cibert_Data.m
df')
FILEGROUP Ciber_Hist '
(NAME=Ciber_Hist1,FILENAME='D:\SQL\Ciber_Hist1.n
df'),
(NAME=Ciber_Hist2,FILENAME='D:\SQL\Ciber_Hist2.n
df')
Log ON
(NAME=Ciber_Log,FILENAME='E:\SQL\Ciber_Log.ldf')

Adicionando Filegroups a la BD

Agregando FileGroups en la Base de Datos


ALTER DATABASE BD_Negocios ADD FILEGROUP DATA_1
ALTER DATABASE BD_Negocios ADD FILEGROUP DATA_2

Agregando archivos secundarios a los FileGroups


ALTER DATABASE BD_Negocios
ADD FILE ( NAME = Data1, FILENAME = 'D:\DATA1.ndf',
SIZE = 1MB, MAXSIZE = 10MB, FILEGROWTH = 1MB
) TO FILEGROUP DATA_1
ALTER DATABASE BD_Negocios
ADD FILE ( NAME = Data2, FILENAME = 'D:\DATA_2.ndf',
SIZE = 1MB, MAXSIZE = 10MB, FILEGROWTH = 1MB
) TO FILEGROUP DATA_2

Comandos adicionales
Listar las Bases de Datos
SELECT * FROM sys.sysdatabases

Visualizar la estructura de la Base de Datos


SP_HELPDB BD_Negocios

Listar los archivos FileGroups de la Base de


Datos
SELECT * FROM sys.sysfilegroups

Eschema de Base de Datos

Qu es un Schema?
Entidad independiente, contenedor de objetos
distintos del usuario que ha creado esos
objetos.
Un esquema slo puede ser propiedad de un
usuario a la vez, pero un solo usuario puede ser
dueo de muchos esquemas.
Esquema por defecto
El esquema predeterminado es el primer
esquema que se busca al resolver los nombres
de objeto no calificadas. Si no hay ningn
esquema predeterminado se define para una
cuenta de usuario, SQL Server asumir dbo.

Ventajas de un Schema
Proporcionan la oportunidad de simplificar la
administracin de la seguridad, backup y
restauracin, y administracin de base de datos.
Ayudan a manejar la lgica de las entidades por
separado, el uno del otro, pero dejar a los objetos
para trabajar juntos cuando sea necesario.
A travs de esquemas, un DBA puede controlar el
acceso a los objetos fundamentales que de otra
manera
estaran
abiertos
a
los
cambios
potencialmente destructiva por los usuarios.

Sintaxis para crear un Schema


CREATE SCHEMA <Nombre_Schema>
go

Sintaxis modificar un Schema


ALTER SCHEMA <Schema>
TRANSFER <Schema>.<Tabla>
Esta sintaxis se utiliza para mover elementos que pueden
protegerse entre esquemas en la misma base de datos. Para
cambiar o quitar un elemento que puede protegerse dentro de un
esquema, utilice el ALTER o DROP especfica para ese elemento.

Permisos

Base de Datos

Preguntas?

Base de Datos

Fin de Sesin

You might also like