Está en la página 1de 23

Base de datos

Ing. Carlos Roberto Meja H.

Sistema Gestor de Base de Datos


Un Sistema Gestor de base de datos (SGBD) es un onjunto de !rogramas "ue !ermiten rear # mantener una Base de datos$ asegurando su integridad$ on%iden ialidad # seguridad.

&or tanto debe !ermitir'

De%inir una base de datos' es!e i%i ar ti!os$ estru turas # restri iones de datos..

Construir la base de datos' guardar los datos en alg(n medio ontrolado !or el mismo SGBD

Mani!ular la base de datos' reali)ar onsultas$ a tuali)arla$ generar in%ormes.

*s se trata de un so%t+are de !ro!,sito general. -jem!lo de SGBD son .ra le # S/0 Ser1er de Mi roso%t

continuacin
*lgunas de las ara tersti as deseables en un Sistema Gestor de base de datos SGBD son'

Control de la redundan ia' 0a redundan ia de datos tiene 1arios e%e tos negati1os (du!li ar el trabajo al a tuali)ar$ des!erdi ia es!a io en dis o$ !uede !ro1o ar in onsisten ia de datos) aun"ue a 1e es es deseable !or uestiones de rendimiento. Restri i,n de los a esos no autori)ados' ada usuario 2a de tener unos !ermisos de a eso # autori)a i,n.

Cum!limiento de las restri iones de integridad' el SGBD 2a de o%re er re ursos !ara de%inir # garanti)ar el um!limiento de las restri iones de integridad.

SGBDs Libres
SGBD libres MySQL PostgreSQL DevFirebird SQLite DB2

SGBDs no libres
*d1antage Database dBase 3ileMa4er 3o5 &ro IBM DB6 Uni1ersal Database (DB6 UDB) IBM In%ormi5 Interbase de CodeGear$ %ilial de Borland M*GIC Mi roso%t * ess Mi roso%t S/0 Ser1er 7e5usDB .!en * ess .ra le &arado5 &er1asi1eS/0 &rogress (DBMS) S#base *S S#base *S* S#base I/ 8indo+Base IBM IMS Base de Datos 9er:r"ui a C*;IDMS

SGBDs no libres y gratuitos


Mi roso%t S/0 Ser1er Com!a t -dition Basi a S#base *S- -5!ress -dition !ara 0inu5 (edi i,n gratuita !ara 0inu5) .ra le -5!ress -dition <=

Base de datos
-s un sistema "ue alma ena datos "ue est:n rela ionados. -s un re!ositorio en donde guardamos in%orma i,n integrada "ue !odemos alma enar # re u!erar. Un onjunto de in%orma i,n alma enada en memoria au5iliar "ue !ermite a eso dire to # un onjunto de !rogramas "ue mani!ulan esos datos

Tipos de usuarios en base de datos


Usuario 3inal' es la !ersona "ue utili)a los datos$ esta !ersona 1e datos on1ertidos en in%orma i,n' Desarrollador de *!li a iones' es la !ersona "ue desarrolla los sistemas "ue intera t(an on la Base de Datos. DB*' es la !ersona "ue asegura integridad$ onsisten ia$ redundan ia$ seguridad este es el *dministrador de Base de Datos "uien sed en arga de reali)ar el mantenimiento diario o !eri,di o de los datos. 0as !ersonas tienen a eso DBMS se lasi%i an de la siguiente manera' USU*RI.S I7G-7U.S. > Son a"uellos "ue intera t(an on el sistema !or medio de a!li a iones !ermanentes. USU*RI.S S.3IS?IC*D.S.; son a"uellos on la a!a idad de a eder a la in%orma i,n !or medios de lenguajes de onsulta. &R.GR*M*D.R-S D- *&0IC*CI@7.; son a"uellos on un am!lio dominio del DM0 a!a es de generar nue1os m,dulos o utileras a!a es de manejar nue1os datos en el sistema. USU*RI.S -S&-CI*0IA*D.S.; son a"uellos "ue desarrollan m,dulos "ue no se re%ieren !re isamente al manejo de los datos$ si no a a!li a iones a1an)adas omo sistemas e5!ertos$ re ono imientos de im:genes$ !ro esamiento de audio # dem:s.

Conceptos bsicos de Base de datos


?abla' son onjuntos de registros.

Registros' son onjuntos de am!os.

Cam!os' es la mnima unidad de re%eren ia.

Ejemplo

SQL
Structured Query Language o 0enguaje de Consultas -stru turado. -s el lenguaje "ue !ermite la omuni a i,n on el Sistema Gestor de Bases de Datos (.ra le en nuestro aso). -l S/0 es un lenguaje uni%i ado 0o utili)an todo ti!o de usuarios$ desde el administrador de la base de datos$ DB*$ 2asta el usuario %inal. -l S/0 es un lenguaje no !ro edimental. -l usuario es!e i%i a Qu "uiere$ no Cmo ni Dnde onseguirlo -l S/0 es rela ionalmente om!leto. &ermite la reali)a i,n de ual"uier onsulta de datos.

SQL DDL ! D"L


0enguaje de De%ini i,n de Datos$ DD0
B Senten ias del S/0 "ue !ermiten de%inir los objetos de la Base de Datos ( reate$ re1o4e$ grant$ alter$ et .). Cuando se de%inen di 2os objetos se alma enan en el di ionario de datos.

0enguaje de Mani!ula i,n de Datos$ DM0


Senten ias del S/0 "ue se utili)an !ara manejar los datos de la base de datos (sele t$ insert$ u!date$ delete$ et ).

commit#rollbac$
Cada 1e) "ue se reali)a alguna o!era i,n en la base de datos se reali)a no sobre la tabla en s$ sino sobre una o!ia lo al de la misma. *s$ si "ueremos "ue los resultados de la modi%i a i,n se trasladen a la base de datos # !erduren en el tiem!o 2a# "ue on%irmar di 2a o!era i,n on el omando ommit. ?ambiCn se !uede im!edir "ue los (ltimos ambios lleguen a e%e tuarse on rollba 4$ aun"ue e5isten algunas senten ias S/0 "ue se Dauto on%irmanD # no se !ueden 1ol1er atr:s.

Sentencia DDL *lter !ro edure

Objetivo Re om!ilar un !ro edimiento alma enado.

*lter ?able

*Eadir o rede%inir una olumna$ modi%i ar la asigna i,n de alma enamiento.

*nal#)e

Re oger estadsti as de rendimiento sobre los objetos de la BD !ara utili)arlas en el o!timi)ador basado en ostes.

Create ?able Create Inde5 Dro! ?able Dro! Inde5 Grant ?run ate Re1o4e

Crear una tabla. Crear un ndi e. -liminar una tabla. -liminar un ndi e. Con eder !ri1ilegios o !a!eles$ roles$ a un usuario o a otro rol. -liminar todas las %ilas de una tabla. Retirar los !ri1ilegios de un usuario o rol de la base de datos.

Sentencia DML Insert Delete U!date Sele t Commit Rollba 4

Objetivo *Eadir %ilas de datos a una tabla. -liminar %ilas de datos de una tabla. Modi%i ar los datos de una tabla. Re u!erar datos de una tabla. Con%irmar omo !ermamentes las modi%i a iones reali)adas. Des2a er todas las modi%i a iones reali)adas desde la (ltima on%irma i,n.

Create
0a !rimera %ase de ual"uier base de datos omien)a siem!re on senten ias DD0$ #a "ue antes de !oder alma enar in%orma i,n debemos de%inir los objetos b:si os donde agru!ar la in%orma i,n. 0os objetos b:si os on "ue trabaja S/0 son las tablas. Una tabla es un onjunto de eldas agru!adas en %ilas # olumnas donde se alma enan elementos de in%orma i,n. *ntes de lle1ar a abo la rea i,n de una tabla on1iene !lani%i ar'
B nombre de la tabla$ B nombre de ada olumna$ B ti!o # tamaEo de los datos alma enados en ada olumna$ B in%orma i,n adi ional$ restri iones$ et .

Creando base de datos


F s2o+ databasesG
B Comando !ara !resentar las bases de datos

F reate database HnombreI F use HnombreI

B In%o de re%eren ia' 2tt!'JJde1.m#s"l. omJdo Jre%manJK.=JesJ reating;tables.2tml

Creando tabla
F s2o+ tablesG
B Comando !ara listar las tablas de la base de datos

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ?i!os de dato' Lar 2ar C2ar Date Bigint Int 3loat <= arbol de mi es!eran)a

F reate uno( odigo bigint(M)$ numero int(N)$ nombre 1ar 2ar(6=)$ %e 2a date$ !re io %loat(<=$6) )G F s2o+ tablesG
B Comando !ara listar las tablas

F des ribe HtableIG


B D-SCRIB- !uede ser utili)ada en ual"uier momento$ !or ejem!lo$ si ol1ida los nombres o el ti!o de dato de las olumnas de la tabla.

Truncate
F trun ate table HtablaI G
B -liminar todos los registros de una tabla

TRUNCATE TABLE

DELETE FROM

-s una o!era i,n DD0. 7o !ermite el borrado sele ti1o. ?RU7C*??*B0- elimina todo el ontenido de la tabla. -s la %orma m:s r:!ida de eliminar el ontenido de una tabla. 7o se a ti1a ning(n trigger al eje utarse (a !artir de S/0 Ser1er 6==K$ es !osible a!turar el e1ento mediante un DD0 trigger$ !ero a modo de auditora$ no es !osible tener a eso a los 1alores "ue %ueron eliminados). -n aso "ue la tabla tu1iese un am!o Identit#$ se resetea el 1alor a < (o al 1alor base determinado en el am!o). -l logueo en el transa tion log es mnimo. Solo registra el deallo de las !:ginas de datos.

-s una o!era i,n DM0. &ermite el borrado sele ti1o$ mediante la lausula 8H-R-. -s m:s lenta. &uede a ti1arse el trigger de .7 D-0-?# !oder determinar "ue registros est:n siendo eliminados. siendo eliminados. 7o resetea el 1alor del am!o Identit#$ en aso "ue la tabla tu1iese uno. 0oguea ada o!era i,n sobre los registros a%e tados.

Drop
Dro! table HtablaI G
B -limina una tabla

&reguntas