Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Dominios en Firebird (https://www.clubdelphi.com/foros/showthread.php?t=59432)

mightydragonlor 27-08-2008 02:34:39

Dominios en Firebird
 
Hola a todos, tengo claro que la implementación de Dominios en Firebird es muy necesario para los campos concurrentes en diversas tablas, pero es aquí que me surge la duda, yo estoy utilizando EMS Manager for Interbase Firebird Lite 2005, que es de uso gratuito, ¿si establesco un dominio como not null, cuando creo la tabla y le digo que cierto campo pertenece a ese dominio, debo decirle tabien que ese campo es not null?, he visto varios tutoriales, pero no abarcan esta duda que me surge, gracias a todos.

pcicom 27-08-2008 03:50:32

La manera mas simple de ENTENDER el concepto de DOMINIOS es como si nosotros crearamos TIPOS de DATOS con el Nombre que nosotros Elijamos con las especificaciones definidas..

Por Ejemplos de DOMINIOS.

PORCENTAJE DECIMAL 15,3
IMPORTE DECIMAL 15,2
CANTIDAD INTEGER

Cuando definamos en nuestras tablas quedarian asi..

TABLA FACTURAS

FACTURA INTEGER;
:::
CANT CANTIDAD;
VALOR IMPORTE;
TOTAL IMPORTE;

TABLA CLIENTES
CLIENTE INTEGER;
SALDO IMPORTE;
PUNTOS CANTIDAD;


Si despues cambias la Deficion de tus DOMINIOS tus TABLAS tambien lo haran.

duilioisola 27-08-2008 08:00:01

Un dominio puede estar declarado como NOT NULL y por lo tanto no necesitas volver a definirlo.

Aquí unos ejemplos:

Código SQL [-]
create domain ARTICULO as varchar(15) default '' check (value=upper(value)) not null;
Dominio ARTICULO que es de 15 caracteres y es una cadena vacía por defecto. Verifica que sean mayúsculas y no nulo.
Código SQL [-]
create domain LOGICO as smallint default 0 check (value in(0,1)) not null;
Dominio para representar un boolean. Es un "entero pequeño" que por defecto es 0 y solo puede tener valores 0 o 1 y además no puede ser nulo.

Luego pordrías crear una tabla y poner:

Código SQL [-]
CREATE TABLE ARTICULOS
(COD_ARTICULO ARTICULO
ACTIVO LOGICO
...)

mightydragonlor 27-08-2008 17:00:11

duilioisola muchas gracias por tu explicación , la verdad es que me ha quedado claro sobre la definicion de not null en los dominios, estaba rebanandome los cesos pensando el por que al llamar el dominio a un campo de la tabla, este campo no recibia el valor not null del dominio, muchas gracias a todos por la ayuda prestada, me siento muy orgulloso de pertenecer Club Delphi, ya que todos por acá son muy colaboradores y pacientes con todos los que apenas estamos empezando a programar. :D


La franja horaria es GMT +2. Ahora son las 16:45:46.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi