 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
TJOSE Ens

Registrado: 26 Nov 2002Mensajes: 42
|
Publicado: Mie 21 Mar, 2007 12:59 pm Asunto: |
|
|
Hola Angel
-Dominios:
en el dominio, no solo defines el tipo de datos, sino que además incluyes ciertas reglas de validación para dicho campo, lo haces sólo una vez
| Código: |
create domain dSuperficie as
integer
default 0
not null
check (value >= 0);
|
si el campo superficie aparece en muchas tablas (superficie dSuperficie), y por alguna razón necesitas validar que solo acepte valores mayores a 100, modificas la definicion del dominio y automaticamente esto se hace extensivo a todas las campos en donde utilizas el dominio dSuperficie, De no haber utilizado dominios debería haber cambiado la definicion de los campos uno a uno.
| Cita: | | ¿No es duplicar el trabajo? |
Como habras visto, es todo lo contrario, se define una vez y en un solo lugar y se utiliza muchas veces y en diferentes tablas (siempre y cuando sea necesario)
Un caso quiza más notable es dApellido
| Código: |
create domain dApellido as
varchar(40)
not null;
|
Apellido puede aparecer en las tablas clientes, proveedores, contactos, empleados, etc. Por cada vez que aparezca el campo apellido en una tabla debería haber escrito
| Código: |
...
Apellido varchar(40) not null;
...
|
Si necesito modificar a varchar(50) deberé modificar la definición cuatro veces, una por cada tabla en donde aparece el campo. Con dominios sólo una vez.
Cuando de define un dominio un poco más complejo, por ejemplo cuando hay reglas de validación, las ventajas de la utilización de dominios es todavía más marcada.
Espero haber aclarado.
Saldudos
TJose |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|