IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bases de données Delphi Discussion :

Comment inclure un tableau dans un champ d'une table Paradox ?


Sujet :

Bases de données Delphi

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Comment inclure un tableau dans un champ d'une table Paradox ?
    Bonjour à tout le monde,

    Je programme une application en pascal avec BDE et lors de la creation d'une table PARADOX,

    J'ai besoin est de creer un champ dans la table par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    TableName := 'nomtable';
    FieldDefs.Clear;
    FieldDefs.Add('id_fraisexterne',   ftAutoInc,   0, True);
    FieldDefs.Add('ext_libellenom',    ftString,   30, False);
    FieldDefs.Add('tableau',           ???????,     ?, False);
    FieldDefs.Add('enreg',             ???????,     ?, False);
    CreateTable;
    mon champ tableau doit etre du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    type TtotauxFiche = array[0..13] of currency;
    mon champ enreg doit etre du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    type tligenreg = record
      nom:     string;
      val1:     currency;
    end;
    est ce possible et comment, voila mon pb, je n'arrive pas a trouver comment faire et je cherche donc des docs sur le sujet ou un tuto pouvez vous m'orienter.

    Merci d'avance.

  2. #2
    Fxg
    Fxg est déconnecté
    Membre éclairé
    Homme Profil pro
    ingénieur financier
    Inscrit en
    Septembre 2003
    Messages
    510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : ingénieur financier

    Informations forums :
    Inscription : Septembre 2003
    Messages : 510
    Points : 837
    Points
    837
    Par défaut
    Bonjour

    Les champs de type tableau n'existent ps en natif dans Paradox ni les champs enregistrements.
    Pour ceux ci ne suffit-il pas de créer deux champs supplémentaires nom et val1 ?
    et pour ton champs tableau qui semble être une somme sur d'autres champs d'utiliser les champs calculés ?

  3. #3
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 459
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 459
    Points : 24 873
    Points
    24 873
    Par défaut
    Soit autant de champ que d'élément dans le tableau, cela permettra de faire du SQL sur ces colonnes
    soit un champ blob, qui sera manipulé via CopyMemory entre le Tableau ou un Record, cela empeche de faire du SQL sur ces colonnes et les rapports devront être géré manuellement, ... c'est une idée, mais très mauvaise en pratique, pour des raisons de maintenance, de portabilité et d'opérabilité ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  4. #4
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 170
    Points
    4 170
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Soit autant de champ que d'élément dans le tableau, cela permettra de faire du SQL sur ces colonnes
    soit un champ blob, qui sera manipulé via CopyMemory entre le Tableau ou un Record, cela empeche de faire du SQL sur ces colonnes et les rapports devront être géré manuellement, ... c'est une idée, mais très mauvaise en pratique, pour des raisons de maintenance, de portabilité et d'opérabilité ...
    +1, à une nuance près : Paradox et les requêtes SQL ça ne fait pas très bon ménage. Il ne faut pas que les requêtes soient trop compliquées sinon bonjour les perfs.

    La solution du blob est certe particulièrement pourrie, mais si on veut de bonnes perfs avec Paradox c'est parfois ce qui donne les meilleurs résultats (moyennant pas mal de code derrière pour gérer ces structures binaires à la main).

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par Fxg Voir le message
    Bonjour

    Les champs de type tableau n'existent ps en natif dans Paradox ni les champs enregistrements.
    Pour ceux ci ne suffit-il pas de créer deux champs supplémentaires nom et val1 ?
    et pour ton champs tableau qui semble être une somme sur d'autres champs d'utiliser les champs calculés ?
    Merci de ta reponse, et dans l'aide DELPHI j'ai pu trouver

    FieldDefs.Add('tableau', ftTypedBinary, ???, False);

    est ce qu'avec ce type de champ je peut trouver mon bonheur.

    De plus où peut on trouver une documentation ou un tutoriel sur la facon de manipuler un tel type de champ.

    Merci

Discussions similaires

  1. [MySQL] Résultat d'un tableau dans des champs d'une BD
    Par djoumusic dans le forum PHP & Base de données
    Réponses: 34
    Dernier message: 18/07/2008, 20h02
  2. comment inclure un tableau dans le CORPS d'un mail Lotus Notes
    Par Mathusalem dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/07/2008, 16h48
  3. Réponses: 3
    Dernier message: 31/05/2008, 12h50
  4. Réponses: 3
    Dernier message: 13/03/2007, 13h40
  5. Réponses: 4
    Dernier message: 08/07/2006, 06h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo