Article View: chile.comp.programacion
Article #1954Re: Consulta
From: YiCi en Jotmeil
Date: Fri, 07 Apr 2006 20:09
Date: Fri, 07 Apr 2006 20:09
116 lines
4701 bytes
4701 bytes
"Erasure" <nn@nn.com> wrote in news:e0s1qq$o5$1@news.nivel5.cl:
> Hola a todos, por casualidad habr� alguien por ac� que me pueda dar
> una definicion sencilla de que es Modelamiento de datos, he encontrado
> definiciones algo complejas, y no entiendo muy bien (no soy muy metido
> en el area de programacion, pero necesito saber que significa
> Mdelamiento de datos.
>
>
>
Modelar una base de datos es "realizar un modelo abstracto que reprente
una porcion de la realidad".
Si en la realidad tenemos a Juan Perez, Arquitecto que vive en La Serena
y que tiene una esposa que est� mas rica que el pan con Chancho, entonces
en nuestro mundo modelado, existen las PERSONAs, las que tienen un
NOMBRE, APELLIDO, PROFESION, LUGAR_DE_RESIDENCIA y ESTADO_CIVIL, y una
persona en particular es NOMBRE="Juan", APELLIDO="Perez",
PROFESION="Arquitecto", LUGAR_DE_RESIDENCIA="La Serena",
ESTADO_CIVIL="CASADO".
As� existir� la TABLA PERSONA, en que cada registro posee los siguientes
atributos:
TABLA PERSONA
-------------
ATRIBUTO PERSONA.NOMBRE,
ATRIBUTO PERSONA.APELLIDO,
ATRIBUTO PERSONA.PROFESION,
ATRIBUTO PERSONA.LUGAR_DE_RESIDENCIA,
ATRIBUTO PERSONA.ESTADO_CIVIL.
Luego, se dice que cosa vamos a almacenar en cada atributo. Claramente en
el ATRIBUTO PERSONA.NOMBRE se almacenar�n nombres, por lo que se podr�n
poner letras y caracteres acentuados. Por otro lado debera permitir una
longitud m�xima (a fin de calcular cuanto espacio se debe disponer para
almacenar cada registro). As� surgen el TIPO y su LARGO. Tipicamete se
definan como TIPO(LARGO).
TABLA PERSONA
-------------
ATRIBUTO PERSONA.NOMBRE TEXTO(20)
ATRIBUTO PERSONA.APELLIDO TEXTO(20)
ATRIBUTO PERSONA.PROFESION TEXTO(20)
ATRIBUTO PERSONA.LUGAR_DE_RESIDENCIA TEXTO(20)
ATRIBUTO PERSONA.ESTADO_CIVIL TEXTO(20)
Ahora, dado que hay muchas personas que pueden llamarse igual,
necesitamos a�adir un atributo o conjunto de atributos que sean �nicos
para cada persona. Usando el Rut quedaria como sigue:
TABLA PERSONA
-------------
ATRIBUTO PERSONA.RUT TEXTO(10)
ATRIBUTO PERSONA.NOMBRE TEXTO(20)
ATRIBUTO PERSONA.APELLIDO TEXTO(20)
ATRIBUTO PERSONA.PROFESION TEXTO(20)
ATRIBUTO PERSONA.LUGAR_DE_RESIDENCIA TEXTO(20)
ATRIBUTO PERSONA.ESTADO_CIVIL TEXTO(20)
Depurando un poco el modelo podriamos tener algo as�:
TABLA PERSONA
-------------
ATRIBUTO �NICO PERSONA.RUT NUMERICO(8)
ATRIBUTO PERSONA.RUT_DV TEXTO(1)
ATRIBUTO PERSONA.NOMBRES TEXTO(20)
ATRIBUTO PERSONA.APELLIDO_PATERNO TEXTO(20)
ATRIBUTO PERSONA.APELLIDO_MATERNO TEXTO(20)
ATRIBUTO PERSONA.APELLIDO_TELEFONO NUMERICO(8)
ATRIBUTO PERSONA.PROFESION TEXTO(20)
ATRIBUTO PERSONA.DOMICILIO TEXTO(50)
ATRIBUTO PERSONA.ESTADO_CIVIL TEXTO(20)
De aqu� se pasa a la sintaxis de creaci�n del motor de base de datos
adecuado:
CREATE TABLE PERSONA AS
{
PRIMARY KEY RUT NUMERIC LENGHT 8
RUT_DV STRING LENGHT 1
NOMBRES STRING LENGHT 20
APELLIDO_PATERNO STRING LENGHT 20
APELLIDO_MATERNO STRING LENGHT 20
TELEFONO NUMERIC LENGHT 8
PROFESION STRING LENGHT 20
DOMICILIO STRING LENGHT 50
ESTADO_CIVIL STRING LENGHT 20
};
o bien algo mas f�cil como:
CREATE TABLE PERSONA (RUT NUMERIC(8), INDEX(RUT(10), RUT_DV TEXT(1),
NOMBRES TEXT(20), APELLIDO_PATERNO TEXT(20), APELLIDO_MATERNO TEXT(20),
TELEFONO NUMERIC(8), PROFESION TEXT(20), DOMICILIO TEXT(50), ESTADO_CIVIL
TEXT(20));
o bien algo m�s estandar como:
create table persona (
rut number(8) primary key,
rut_dv varchar2(1),
nombres varchar2(20),
apellido_paterno varchar2(20),
apellido_materno varchar2(20),
telefono number(8),
profesion varchar2(20),
domicilio varchar2(50),
estado_civil varchar2(20)
)
Ojala le sirva estimado.
Er YiCi
Technical Details
Message-ID:
<Xns979EA11F0167CYiCi@200.27.3.23>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!news.vcd.cl!not-for-mail!news.telmexchile.cl!not-for-mailReferences:
<e0s1qq$o5$1@news.nivel5.cl>Show Full Headers
Complete Article Headers
X-Google-Thread: 1593cb,9bfad78c045bcd3f X-Google-Attributes: gid1593cb,public X-Google-Language: SPANISH,ASCII From: YiCi en Jotmeil <YiCiHotm@il.com> Newsgroups: chile.comp.programacion Subject: Re: Consulta Date: Fri, 7 Apr 2006 20:09:30 +0000 (UTC) Organization: Your Company Lines: 119 Message-ID: <Xns979EA11F0167CYiCi@200.27.3.23> References: <e0s1qq$o5$1@news.nivel5.cl> NNTP-Posting-Host: 200.27.237.34 X-Trace: spawn.telmexchile.cl 1144440570 22207 200.27.237.34 (7 Apr 2006 20:09:30 GMT) X-Complaints-To: usenet@rdc.cl NNTP-Posting-Date: Fri, 7 Apr 2006 20:09:30 +0000 (UTC) User-Agent: Xnews/5.04.25 Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!news4.google.com!news.glorb.com!nntp-server.pubsub.com!news.nivel5.cl!news.vcd.cl!not-for-mail!news.telmexchile.cl!not-for-mail