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 :

Créer des champs persistants


Sujet :

Bases de données Delphi

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    838
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 838
    Points : 262
    Points
    262
    Par défaut Créer des champs persistants
    bonjour,

    est ce qu'il est possible de creer des champs persistants pour un composant type ttable ou Tquery par programme ?

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 452
    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 452
    Points : 24 863
    Points
    24 863
    Par défaut
    Qu'est-ce qu'un champ persistant ?
    Pour moi, c'est un champ réellement stocké en DB, le contraire d'un champ calculé ...
    Soit plus précis !

    Avoir FieldDefs.Add ... tu trouveras plein d'exemple sur le forum
    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

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    838
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 838
    Points : 262
    Points
    262
    Par défaut réponse
    bonsoir,

    ce sont les champ que l'on peut créer en mode conception à l'aide de l'éditeur de champ (double clic sur le composant Ttable ou Tquery)

    quand on ne connait pas bien le sql (e qu'on vient du BDE) c'est plus pratique à utiliser


    A+

  4. #4
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    De prime abord je réponds non.

    A priori, cette petite couche de persistence offerte par les dataset n'est faite que pour fonctionner en design-time.
    Connaître lors du run-time les champs persistants d'un dataset est facile car cela est décrit dans la propriété FieldList du DataSet.

    Mais quand tu regardes dans la classe TDataSet tu remarqueras que cette propriété est en lecture seule. Donc pas de addObbject possible dans ton code.

    Peut-être en déployant une stratégie très compliquée pour arriver quand même au résultat. Mais est-ce que le jeu en vaut véritablement la chandelle ?

    Je pense qu'il te faut te poser la question de savoir si tu n'as pas la possibilité de contourner de problème. Reformule peut-être ta question en nous disant ce que tu désires-réaliser qui t'oblige à t'imposer de créer un champ persistant au run-time.
    Pensez à utiliser les tags dans le titre.
    Avant de poser une question reportez-vous à la FAQ Delphi
    Respectez les règles du forum.

  5. #5
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 452
    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 452
    Points : 24 863
    Points
    24 863
    Par défaut
    la notion de lecture seule n'est pas toujours bien géré dans le code, parfois la lecture seule a été limité à la référence de l'objet, mais par contre, dans le cas de FieldList c'est bien géré, parce qu'il y a une autre propriété FieldDefs, et celle-ci dispose d'un Add !

    Pour Paradox via TTable, voir Table.FieldDefs.AddFieldDef et CreateTable ...
    il faut d'aborder recopier les données dans une table tampon, la table d'origine sera écrasée !
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Créer des champs en format XML
    Par DevNico dans le forum Développement de jobs
    Réponses: 1
    Dernier message: 20/08/2009, 14h34
  2. Réponses: 25
    Dernier message: 16/06/2009, 11h36
  3. Créer des champs dans une facture
    Par methodiste dans le forum Débuter
    Réponses: 0
    Dernier message: 18/03/2009, 15h19
  4. Créer des champs en vba
    Par devdev dans le forum VBA Access
    Réponses: 3
    Dernier message: 03/03/2009, 12h22
  5. Créer des champs en automatique dans formulaire
    Par Daniel MOREAU dans le forum VBA Access
    Réponses: 5
    Dernier message: 28/06/2007, 18h14

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