Précédent   Forum des professionnels en informatique > Bases de données > Firebird
Firebird Forum d'entraide sur le SGBD Firebird. Avant de poster -> F.A.Q Firebird, Tutoriels
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/08/2006, 11h08   #1
Membre à l'essai
 
Inscription : septembre 2002
Messages : 49
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 49
Points : 23
Points : 23
Par défaut utilisation d'un domaine pour plusieurs champs

bonjour,

j'ai plusieurs champs qui sont des champs numeriques de dénombrement : nombre de velo, de voiture, d'avion, nombre de question idiote firebird etc...

si on ne specifie pas de domaine, firebird créé automatiquement un domaine pour chaque champ. donc on a plein de domaine du meme genre !

il semble que l'etat de l'art commanderait de créér un domaine du genre : DOMAINE_DENOMBREMENT // default value 0 // not null

ensuite on attriburait ce domaine à tous les champs numeriques utilisés pour du dénombrement. On limiterait donc le nb de domaine. faut il faire cela ?

cette maniere de faire ameliore t elle firebird ? est ce que c'est juste une question de simplicité pour l'administration de la base ?

merci !
jupierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 11h20   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
c'est une bonne pratique et une facilité d'administration de la base, pas une question de performance
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 11h24   #3
Membre émérite
 
Avatar de Yurck
 
Homme
Ingénieur développement logiciels
Inscription : février 2005
Messages : 682
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 3
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2005
Messages : 682
Points : 921
Points : 921
Citation:
Envoyé par jupierre
cette maniere de faire ameliore t elle firebird ? est ce que c'est juste une question de simplicité pour l'administration de la base ?
Depuis toujours j'utilise des domaines, et oui cela améliore la lisibilité de la structure de ta base. Ainsi un nom de domaine explicite permet de savoir pourquoi tu as declaré tel ou tel domaine pour tel ou tel champs.
Imaginons le type Integer, tu peux l'utiliser pour tes séquenceurs et pour tes quantités. Alors si tu as deux domaines tu pourra facilement faire la différence entre les uns et les autres et ainsi évoluer facilement vers des quantités flottantes.
Oui parce que depuis le XXème siècle Interbase nous promet le domaine modifiable via la commande "Alter Domain", sans doute n'attendrons nous pas un siècle de plus et alors la notion de domaine sous interbase deviendra réellement intéressante.

En attendant pour répondre clairement à ta réponse je ne sais pas si cela améliore les triatements d'interbase ou de FireBird et j'attends la réponse d'un utilisateur éclairé.

a+
__________________
Dans le vocabulaire des couturiers seulement, patron est synonyme de modèle.
Aymond d'Alost
Yurck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 13h21   #4
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
Citation:
Envoyé par Yurck
Oui parce que depuis le XXème siècle Interbase nous promet le domaine modifiable via la commande "Alter Domain", sans doute n'attendrons nous pas un siècle de plus et alors la notion de domaine sous interbase deviendra réellement intéressante.
et bien dans Firebird, cela existe


Citation:
Envoyé par Yurck
En attendant pour répondre clairement à ta réponse je ne sais pas si cela améliore les triatements d'interbase ou de FireBird et j'attends la réponse d'un utilisateur éclairé.
au niveau perf cela n'a que très peu d'incidence
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 14h50   #5
Membre émérite
 
Avatar de Yurck
 
Homme
Ingénieur développement logiciels
Inscription : février 2005
Messages : 682
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 3
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2005
Messages : 682
Points : 921
Points : 921
Citation:
Envoyé par makowski
et bien dans Firebird, cela existe
et cela ne fonctionne pas !
__________________
Dans le vocabulaire des couturiers seulement, patron est synonyme de modèle.
Aymond d'Alost
Yurck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 16h09   #6
Membre à l'essai
 
Inscription : septembre 2002
Messages : 49
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 49
Points : 23
Points : 23
j'ai enlever "resolu" car depuis que j'ai créé mon domaine et que je l'ai affecté a plusieures champ, j'ai un message lors du back up !!
le backup se fait mais a la fin j'ai le message:

" arhtmetic overflow division by zero as occures. arithmetic expression, numeric overflow or string contrunction".

le domaine "mondom" créé est un smallint defaut 0, null autorisé
tout les champs declarer en "mondom" etaient deja en smallint , null autorisé !
bizard ....
jupierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 16h22   #7
Membre émérite
 
Avatar de Yurck
 
Homme
Ingénieur développement logiciels
Inscription : février 2005
Messages : 682
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 3
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2005
Messages : 682
Points : 921
Points : 921
Ta base existait déjà. Alors tu as fait comment pour affecter un nouveau domaine à tes champs ?
__________________
Dans le vocabulaire des couturiers seulement, patron est synonyme de modèle.
Aymond d'Alost
Yurck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 16h24   #8
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
Citation:
Envoyé par Yurck
et cela ne fonctionne pas !
bien sûr que si, cela fonctionne très bien
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 16h42   #9
Membre émérite
 
Avatar de Yurck
 
Homme
Ingénieur développement logiciels
Inscription : février 2005
Messages : 682
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 3
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2005
Messages : 682
Points : 921
Points : 921
Citation:
Envoyé par makowski
bien sûr que si, cela fonctionne très bien
Ah bah non !
J'avais un champ de type integer que mon client m'a demandé a faire passer en Varchar(20) et oui la commande Alter domain a fonctionné et les données ont semblé cohérentes mais...
j'ai donc utilisé ma bonne vieille méthode de création de champ temporaire d'affectation des données de destructions du champ initiale et d'affectation de donnée.

Alors je ne mets pas en doute que cela fonctionne puisque tu le dis, et je vais mettre cela sur le dos d'une erreur de ma part.
Je promets donc de réessayer dès que l'occasion se représentera et alors si cela se passe mal j'enlèverai les points de suspension de mon mais... et je posterai ici une explication plus cohérente que :
"ça marche pas !".

Cordialement et vive FireBird.
__________________
Dans le vocabulaire des couturiers seulement, patron est synonyme de modèle.
Aymond d'Alost
Yurck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 17h23   #10
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 215
Détails du profil
Informations personnelles :
Nom : Homme Philippe Makowski
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant spécialité Firebird
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 2 215
Points : 3 318
Points : 3 318
mais ton probleme n'a rien à voir avec Alter domain, tu aurais eu le même sans domaine, c'est un problème de conversion de type (passage d'integer à varchar)
et tu as bien fait de faire comme tu as fais finalement
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 18h01   #11
Membre émérite
 
Avatar de Yurck
 
Homme
Ingénieur développement logiciels
Inscription : février 2005
Messages : 682
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 3
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : février 2005
Messages : 682
Points : 921
Points : 921
Citation:
Envoyé par makowski
c'est un problème de conversion de type (passage d'integer à varchar)
Oui c'est un problème de conversion de type mais peut on dire alors que le alter domain fonctionne ?
Enfin bon j'ai mes petits utilitaires maisons et je fais avec.
__________________
Dans le vocabulaire des couturiers seulement, patron est synonyme de modèle.
Aymond d'Alost
Yurck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/08/2006, 19h45   #12
Membre à l'essai
 
Inscription : septembre 2002
Messages : 49
Détails du profil
Informations forums :
Inscription : septembre 2002
Messages : 49
Points : 23
Points : 23
Citation:
Envoyé par Yurck
Ta base existait déjà. Alors tu as fait comment pour affecter un nouveau domaine à tes champs ?
bon finalement ca marche, j'avais peut etre un autre soucis mais faut que j'enquete ...

pour affecter un nouveau domaine à mes champs :

j'utilise IB expert (vraiment le must !), je clic simplement sur domaine puis new domaine, puis je cré un domaine par exemple "dom_denombrement"

ensuite tu ouvre une table, tu clic sur un champ, tu as un menu deroulant et tu choisi ton domaine "dom_denombrement".

question quand meme :
un champ qui avait par defaut le domaine nommé "RDB$94" se retrouve avec le domaine "dom_denombrement".
Mais apres backup puis restore, l'ancien domaine "RDB$94" existe toujours, c'est bizard quand meme ?

a la semaine prochaine
merci a vous
Julien
jupierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h56.


 
 
 
 
Partenaires

Hébergement Web