Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Administration
Administration Forum d'entraide sur les outils d'administration natifs pour Firebird: gbak, gfix, etc.
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 24/10/2011, 10h07   #1
Futur Membre du Club
 
Inscription : juillet 2008
Messages : 70
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 70
Points : 18
Points : 18
Par défaut Sélectionner les champs

Salut;
Comment sélectionner les champs leur taille et type et plus d'infos d'une table?
merci de votre aide et a plus
tarek_ep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2011, 14h28   #2
Expert Confirmé

 
Homme Philippe Makowski
Consultant spécialité Firebird
Inscription : mai 2002
Messages : 2 213
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 213
Points : 3 315
Points : 3 315
tout depend de l'outil que tu utilises et ce que tu veux en faire
sous isql un par exemple
__________________
Philippe Makowski
IBPhoenix - Firebird
Membre de l'April
makowski est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 09h43   #3
Futur Membre du Club
 
Inscription : juillet 2008
Messages : 70
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 70
Points : 18
Points : 18
Par défaut selectionner les champs firebird

Bonjour,
J'utilise Fibplus commen faire avec les composant de Fibplus sous delphi?
merci
tarek_ep est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/10/2011, 10h59   #4
Membre chevronné
 
Philippe
Inscription : avril 2002
Messages : 451
Détails du profil
Informations personnelles :
Nom : Philippe
Localisation : France

Informations forums :
Inscription : avril 2002
Messages : 451
Points : 681
Points : 681
Envoyer un message via ICQ à Ph. B.
Bonjour
Avec les composants FIBPlus, tu dois interroger directement les tables systèmes de Firebird (RDB$*).
Par exemple, pour avoir la liste des tables et vues non systèmes :
Code sql :
1
2
3
SELECT rdb$relation_name
FROM rdb$relations
WHERE rdb$system_flag = 0
La liste des tables et colonnes :
Code sql :
1
2
3
4
5
6
SELECT F.rdb$relation_name, F.rdb$field_name
FROM rdb$relation_fields F
INNER JOIN rdb$relations R ON R.rdb$relation_name = F.rdb$relation_name
WHERE R.rdb$system_flag = 0
AND R.rdb$relation_type = 0
ORDER BY F.rdb$relation_name, F.rdb$field_name
Une page avec plus de détails sur les metadonnées : voir le lien
Après, il est impératif de s'appuyer sur la doc et éviter les bidouilles aux conséquences malheureuses (corruption de bases) en se limitant aux seules lectures. Faq Firebird

Une autre piste à étudier : voir si les composants FIBPlus ne permettent pas d'obtenir les meta-données de la base de données.
--
Philippe.
Ph. B. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/10/2011, 09h05   #5
Futur Membre du Club
 
Inscription : juillet 2008
Messages : 70
Détails du profil
Informations forums :
Inscription : juillet 2008
Messages : 70
Points : 18
Points : 18
Par défaut j'ai la solution

salut j'ai trouver la solution pour avoir touts les renseignements des champs
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
SELECT
    r.RDB$OWNER_NAME, rf.RDB$RELATION_NAME, rf.RDB$FIELD_NAME,
    case f.RDB$FIELD_TYPE when 12 then 'DATE' when 14 then 'CHAR' when 6 then 'NUMBER' when 35 then 'DATE' when 37 then 'VARCHAR2' when 7 then 'NUMBER' when 8 then 'NUMBER' when 27 then 'NUMBER' when 261 then 'LONG' else f.RDB$FIELD_TYPE end,
    case f.RDB$FIELD_TYPE when 12 then 'DATE' when 14 then 'CHAR' when 16 then 'NUMERIC' when 35 then 'TIMESTAMP' when 37 then 'VARCHAR' when 7 then 'SMALLINT' when 8 then 'INTEGER' when 27 then 'DOUBLE' when 261 then 'BLOB' else f.RDB$FIELD_TYPE end,
    case f.RDB$FIELD_TYPE when 261 then f.RDB$SEGMENT_LENGTH else f.RDB$FIELD_LENGTH end ,
    0,
    0,
    case rf.rdb$null_flag when 1 then 'N' else 'Y' end,
    rf.RDB$FIELD_POSITION
FROM RDB$RELATIONS r
JOIN RDB$RELATION_FIELDS rf ON rf.RDB$RELATION_NAME=r.RDB$RELATION_NAME
LEFT JOIN RDB$FIELDS f ON f.RDB$FIELD_NAME = rf.RDB$FIELD_SOURCE
WHERE r.RDB$SYSTEM_FLAG=0
tarek_ep 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 11h48.


 
 
 
 
Partenaires

Hébergement Web