Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Consulta diseño base de datos

From: Jose Luis Balle <joseluisballe(at)gmail(dot)com>
To: Jorge Toro <jolthgs(at)gmail(dot)com>
Cc: Fernandos Siguenza <fsigu(at)hotmail(dot)com>, Foro Postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Consulta diseño base de datos
Date: 2009-11-19 20:58:34
Message-ID: 6d87542d0911191258u4eb77073m959e6278f4092cd3@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Habría que evaluar muy bien el negocio para justificar este diseño de
tabla.....
Creo que 1:500 para no exagerar :-)
Antes que una solución a este problema habría que preguntarse:
¿no tengo ningun dato que me identifique unívocamente al individuo que
intento insertar, borrar, modificar, ubicar en la tabla?
y luego preguntarse:
¿no tengo ningún numero de obra social, documento de identidad,
número/codigo de cliente para identificar al sujeto?
y mas tarde insistir:
¿no tengo otra forma de identificar al sujeto sin usar el nombre?

Si llegaste hasta acá con todos NO, estas jodido, empeza a buscar una
solución a tu problema pero tené en cuenta que un nombre por si solo no
ayuda a saber si estas en presencia del mismo individuo cada vez. John
Smith, Juan Perez, Maria Lopez no veo donde o porque no puedan repetirse.

El 19 de noviembre de 2009 17:46, Jorge Toro <jolthgs(at)gmail(dot)com> escribió:

>
>
> El 19 de noviembre de 2009 10:42, Fernandos Siguenza <fsigu(at)hotmail(dot)com>escribió:
>
> Amigo como estan, queria consultarles algo tengo una tabla de clientes,
>> entre algunos campos de los que tengo estan, codigo, nombre direccion,
>> telefono.
>> Bien ahora lo que quiero es que cuando se crea un nuevo cliente, al hacer
>> el insert desde mi aplicacion si el codigo del cliente esta repetido la base
>> de datos lo controla porque es llave primaria, pero si quiero que tampoco se
>> pueda ingresar nombres repetidos, entonces el el campo nombre debe ser llave
>> tambien?? o es preferible controlarle desde una funcion, y ahi hacer ese
>> tipo de controles.
>>
>> Saludos
>>
>> ------------------------------
>>
>
> La solución a tu problemas son la claves primarias compuestas. Averigua
> sobres estas y verás.
>
> Ejemplo:
>
> CREATE TABLE cliente (
> codigo character(15) NOT NULL,
> primer_apellido character(10) NOT NULL,
> segundo_apellido character(10) NOT NULL,
> primer_nombre character(10) NOT NULL,
> segundo_nombre character(10),
> direccion character(60),
> telefono character(10),
> CONSTRAINT cliente_pkey PRIMARY KEY (codigo, primer_nombre,
> segundo_nombre, primer_apellido, segundo_apellido)
> )
>
> --
> Jorge A. Toro Hoyos
> Ing. Teleinformático.
> CumbiaTIC, Dir. División de Informática COR. Esp GNU/Linux.
> http://jolthgs.wordpress.com/
> --------------------------------------------------------------
> Powered By Debian.
> Developer Bullix GNU/Linux.
> --------------------------------------------------------------
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.6 (GNU/Linux)
>
> iD8DBQBIWWH6q7mzdgTzI5ARAkX5AJ9TR6hL2ocLMOUDRfhts8DlVl+jpwCeNw5x
> p4+4FNUHPDUx1lU9F8WSKCA=
> =zRhQ
> -----END PGP SIGNATURE-----
> Este correo esta protegido bajo los términos de la Licencia
> Atribución-Compartir Obras Derivadas Igual a 2.5 Colombia de Creative
> Commons. Observé la licencia visitando este sitio
> http://creativecommons.org/licenses/by-sa/2.5/co/.
>

--
"Los derechos humanos deberían ser para las personas...."

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Marcos Luis Ortiz Valmaseda 2009-11-19 21:03:16 Re: encriptar registros o tablas
Previous Message Cesar Erices 2009-11-19 20:51:05 Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Consulta diseño base de datos