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

Delphi Discussion :

Question sur la sauvegarde de données


Sujet :

Delphi

  1. #1
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut Question sur la sauvegarde de données
    Bonjour à tous...
    Voilà, je voudrai créer une liste de personne avec les classiques numéro de téléphone, adresse, ..... Seulement, je voudrait ajouter une note pour chaque personne, c-a-d un long texte, je fais donc:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    PMaList = ^AList
    AList = Record
    Nom : String
    Prenom : String
    Adresse : String
    Note : String
    end;
    J'aimerai donc clicker dans une listbox sur le nom de la personne, et ainsi naviguer dans le fichier.

    Mais le problème, comment sauvegarder dans un fichier une liste de pointeur et le record correspondant?

    Je tiens à signaler que je ne connais absolument pas les pointeurs.....

    Merci pour votre aide

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 79
    Points : 355
    Points
    355
    Par défaut
    Un pointeur pointe vers un espace mémoire ( dans ta RAM donc ), celuil-ci diffère à chaque exécution du programme pour une variable donnée ( Si il ne diffère pas, c'est que t'as beaucoup de chance ) : sauvegarder un pointeur n'est donc pas utile étant donné que l'adresse mémoire vers laquelle il pointe sera détruite lorsque tu mettra fin à ton application.

  3. #3
    Membre à l'essai
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 13
    Points : 16
    Points
    16
    Par défaut
    Hello,

    J'aimerai donc clicker dans une listbox sur le nom de la personne, et ainsi naviguer dans le fichier.
    Tu veux pouvoir ouvrir ton fichier avec les infos de tes "personnes" dans ton appli, ou sauvegarder les infos pour pouvoir les réutilisé ultérieurement ??!

    Si c'est la deuxième solution, je te conseil de sauvegarder les infos dans un fichier XML.

    avec, par exemple, cette structure :

    <personnes>
    <infos>
    <nom>[CDATA[nom1]]</nom>
    <prenom>[CDATA[prenom1]]</prenom>
    <adresse>[CDATA[adresse1]]</adresse>
    <note>[CDATA[note1]]</note>
    </infos>
    <infos>
    ...
    </infos>
    </personnes>

    Le "[CDATA[...]]" est facultatif, cela permet de préserver un texte "long" ou non ainsi que les caractères spéciaux.

    En éspérant avoir apporté une ébauche de solution...
    A+.

  4. #4
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    J'apporte un peu de nouvel: Je ne souhaite pas sauvegardez en xml, pour la simple raison que je doit stocker des List, TobjectList, des images, et des composants dans mon fichier également....
    Bref je pense stocker le tout dans un fichier binaire, mais j'ai toujours ce problème "d'indexation"....

  5. #5
    Membre éprouvé Avatar de der§en
    Homme Profil pro
    Chambord
    Inscrit en
    Septembre 2005
    Messages
    853
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Chambord
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2005
    Messages : 853
    Points : 1 193
    Points
    1 193
    Par défaut
    Un simple TClientDataset couplé a un TDataSource ne te conviendrai pas pour définir ta structure (qui me semble être de même type qu'une table) puis tu n'aurais plus qu'a faire un simple clientDataset1.SaveToFile et un ClientDataSet1.LoadFromFile pour gere ton fichier.

    Der§en.

  6. #6
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Salut Perso, j'utilise les fichiers typés pour ce genre de chose. Un exemple rapidos :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Type TClient = Record 
             Nom: String[50];
             Prenom: String[50];
             Adresse: String[150];
             Photo: TBitmap;
          End;
     
    Type TListClient= Array Of TClient;
     
    Var F: File Of TClient;
     
    Function LoadFromFile(fn: ShortString; Var ListClient: TListClient): Boolean;
    Function SaveToFile(ListClient: TListClient; fn: ShortString): Boolean;
    Si cette solution t'intérresse, dis-le moi, je te donnerais un exemple fonctionnel.
    La dernière fois que j'ai utilisé cette méthode, c'était pour ce projet :
    http://www.developpez.net/forums/sho...d.php?t=193886
    à+

  7. #7
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    Merci Sub0, je t'ai envoyé un MP...
    Pour le TClientDataSet, ca serait pas un composant orienté Base de Donnée, NON livré avec une version PE !
    Bon je pensais faire un fichier binaire, utiliser TFileStream, et les instructions Write Read, mais mon problème c'est cette fichu navigation ...
    Je voudrait afficher plusieur nom de personne dans une listebox, et a chaque nom correspond le prénom, adresse, et une note, note SANS limite de caractère du style (Note : String[255])...
    Voilà....

    Mais bon, comme google est mon ami, je ne désepère pas !!!!!

  8. #8
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Citation Envoyé par petitprince
    note SANS limite de caractère du style (Note : String[255])...
    Tu devrais peut-être commencer par nous donner le cahier des charges, on gagnerait du temps... Tu en as beaucoups des exigences de ce genre ?
    En tous les cas, je ne vois pas 36 solutions, tu seras obligé d'enregistrer la taille de chaque champs.

  9. #9
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    Tu devrais peut-être commencer par nous donner le cahier des charges, on gagnerait du temps... Tu en as beaucoups des exigences de ce genre ?
    Il en à toujours été question depuis mon premier message, qui en est le sujet de la discution !
    Bonjour à tous...
    Voilà, je voudrai créer une liste de personne avec les classiques numéro de téléphone, adresse, ..... Seulement, je voudrait ajouter une note pour chaque personne, c-a-d un long texte, je fais donc:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    PMaList = ^AList
    AList = Record
    Nom : String
    Prenom : String
    Adresse : String
    Note : String
    end;
    J'aimerai donc clicker dans une listbox sur le nom de la personne, et ainsi naviguer dans le fichier.

    Mais le problème, comment sauvegarder dans un fichier une liste de pointeur et le record correspondant?

    Je tiens à signaler que je ne connais absolument pas les pointeurs.....

    Merci pour votre aide

  10. #10
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Ok, j'avais pas fait gaffe.
    Ce n'est pas possible, tu ne peux pas mettre un type string dans un record sans définir une taille, dsl.
    Il me semble que les tableaux dynamiques sont dans le même cas.

  11. #11
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    Pas de solution au problème alors .......

  12. #12
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219

  13. #13
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    Merci, mais je l'ai déjà en stock
    Sinon j'ai trouvé un truc dans la faq, mais j'ai pas testé :Sauvegarder des chaînes longues dans un espace réduit

    Je cherche aussi ......

  14. #14
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    J'ai peut-être une solution à te proposer.
    Il faut que je fasse un essai d'abord.
    Je reviens dans quelques instants avec un code de démo...

  15. #15
    Membre actif Avatar de petitprince
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juillet 2006
    Messages
    322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juillet 2006
    Messages : 322
    Points : 267
    Points
    267
    Par défaut
    Alors toi t'es trop sympa ! Quand t'es dans un truc, tu lache pas !!!
    Sinon pour info, dans la JVCL, il y a un exemple (JvTimeLine) où tu peux stocker du texte (plus de 255 caractère) sur les item de la TimeLine: lorsque tu click sur un des items, ca te ressort ton text....
    J'ai jeté un coup d'oeil mais je comprend pas, car y a une histoire de pointeur...

  16. #16
    Expert confirmé
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Points : 4 219
    Points
    4 219
    Par défaut
    Voici la démo dont je parlais. C'est super simple en fait et très efficace. Voici donc un exemple qui permet d'éditer les informations d'un client et sa photo et de l'enregistrer dans un fichier que l'on pourra recharger ensuite. Il est possible de charger plusieurs frames dans un seul fichier...

    http://sub0.developpez.com/delphi/datasave4.zip

    Citation Envoyé par petitprince
    Alors toi t'es trop sympa ! Quand t'es dans un truc, tu lache pas !!!
    Donner de l'aide aux membres du forum me permet de progresser. Ce genre de programme me servira très certainement. J'ai aujourd'hui fait une autre démo et j'ai appris pleins de trucs : http://sub0.developpez.com/delphi/horloge32.zip
    à+

  17. #17
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    J'ai des choses sympa aussi.
    Stay tuned....

    Oui, je crois qu'avec ton record, l'utilisation de TList, et de TstringList je devrais pouvoir te sortir quelque chose d'intéressant...

  18. #18
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Bon, en fait, c'est tout couillon... C'est juste l'histoire d'un TStringList.

    Je planche dessus...

  19. #19
    Membre expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Points : 3 565
    Points
    3 565
    Par défaut
    Voici l'unité Magique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    unit UnitCarnet;
     
    interface
    uses
      Sysutils, Classes;
    {$H+}
    type
      TFiche=class
      private
        FNom: String;
        FPrenom: String;
        FAdresse: TStringList;
        FNote: TStringList;
        FOnEditingChange: TNotifyEvent;
        procedure SetNom(const Value: String);
        procedure SetPrenom(const Value: String);
        procedure SetAdresse(const Value: TStringList);
        procedure SetNote(const Value: TStringList);
        procedure SetOnEditingChange(const Value: TNotifyEvent);
      protected
        property OnEditingChange:TNotifyEvent read FOnEditingChange write SetOnEditingChange;
        procedure EditingChange(Sender: TObject);
      public
         constructor Create;
         destructor Destroy; override;
         Property Nom : String read FNom write SetNom;
         property Prenom : String read FPrenom write SetPrenom;
         property Adresse : TStringList read FAdresse write SetAdresse;
         property Note : TStringList read FNote write SetNote;
      end;
     
      TCarnet = class
      private
        FStringList:TStringList;
        FIndexCourant: Integer;
        FFicheCourante: TFiche;
        FIsEditing: boolean;
        FOnBrowse: TNotifyEvent;
        FOnEditingChange: TNotifyEvent;
        function GetCapacity: Integer;
        function GetCount: Integer;
        procedure SetCapacity(const Value: Integer);
        function GetSorted: Boolean;
        procedure SetSorted(const Value: Boolean);
        procedure SetIndexCourant(const Value: Integer);
        function GetIndexCourant: Integer;
        procedure SetFicheCourante(const Value: TFiche);
        function GetFicheCourante: TFiche;
        procedure SetIsEditing(const Value: boolean);
        procedure SetOnBrowse(const Value: TNotifyEvent);
        procedure SetOnEditingChange(const Value: TNotifyEvent);
      protected
        function EncodeLigne(UneFiche:TFiche):string;
        procedure DecodeLigne(Ligne:string;Var UneFiche:TFiche);
        procedure EditingChange(Sender: TObject);
      public
        constructor Create;
        destructor Destroy; override;
        //Méthodes façon TStringList
        procedure Clear;
        procedure Sort;
        procedure UpdateFicheCourante;
        procedure LireFiche(Index: Integer;Var UneFiche:TFiche);
        procedure MaJFiche(Index: Integer;UneFiche:TFiche);
        function IndexOf(Nom,Prenom:String):integer;
        function Add(UneFiche:TFiche): Integer;
        procedure Delete(Index: Integer);
        procedure Insert(Index: Integer; UneFiche:TFiche);
        procedure Move(CurIndex, NewIndex: Integer);
        procedure Exchange(Index1, Index2: Integer);
        procedure BeginUpdate;
        procedure LoadFromFile(const FileName: string);
        procedure LoadFromStream(Stream: TStream);
        procedure SaveToFile(const FileName: string);
        procedure SaveToStream(Stream: TStream);
        property Capacity: Integer read GetCapacity write SetCapacity;
        property  Count: Integer read GetCount;
        property Sorted: Boolean read GetSorted write SetSorted;
        procedure EndUpdate;
        //Méthodes Façon TTable
        property IndexCourant:Integer read GetIndexCourant write SetIndexCourant;
        Procedure First;
        Procedure Prior;
        Procedure Next;
        procedure Last;
        procedure Post;
        procedure Cancel;
        procedure New;
        procedure Del;
        property IsEditing:boolean read FIsEditing write SetIsEditing;
        property FicheCourante:TFiche read GetFicheCourante write SetFicheCourante;
        property OnEditingChange:TNotifyEvent read FOnEditingChange write SetOnEditingChange;
        property OnBrowse:TNotifyEvent read FOnBrowse write SetOnBrowse;
      end;
     
    implementation
    ...
    La suite est dans le fichier zip avec l'exemple

    Tout d'abord, tu as la classe TFiche qui représente une fiche de ton carnet d'adresses, avec le Nom (String), le Prénom (string), son Adresse et une Note le concernant (Tous les deux sont des TStringList, à la manière des lignes d'un TMemo)

    Par exemple, tu peux affecter le contenu d'un mémo à la note d'une fiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    var UneFiche:TFiche;
    ...
      UneFiche.Note.Assign(Memo1.Lines);
     
      //et vice versa
      Memo1.Lines.Assign(UneFiche.Note);
    ...
    Ensuite, tu as la classe TCarnet, elle fonctionne presque comme une StringList, à ceci prêt qu'au lieu de gérer une liste de chaînes, tu gère une liste de Fiches.

    Les méthodes qui sont à ta disposition, et qui fonctionnent à peu prèt comme celles de TStringList (voir l'aide Delphi) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
        procedure Clear;
        procedure Sort;    
        function Add(UneFiche:TFiche): Integer;
        procedure Delete(Index: Integer);
        procedure Insert(Index: Integer; UneFiche:TFiche);
        procedure Move(CurIndex, NewIndex: Integer);
        procedure Exchange(Index1, Index2: Integer);
        procedure BeginUpdate;
        procedure LoadFromFile(const FileName: string);
        procedure LoadFromStream(Stream: TStream);
        procedure SaveToFile(const FileName: string);
        procedure SaveToStream(Stream: TStream);
        property Capacity: Integer read GetCapacity write SetCapacity;
        property  Count: Integer read GetCount;
        property Sorted: Boolean read GetSorted write SetSorted;
        procedure EndUpdate;

    A Contrario de TStringList ou tu accèdes à tes lignes directement via TStringList.Strings[], ici, c'est un petit peu différent (je pense que tu auras compris le fonctionnement) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        procedure LireFiche(Index: Integer;Var UneFiche:TFiche);
        procedure MaJFiche(Index: Integer;UneFiche:TFiche);
        function IndexOf(Nom,Prenom:String):integer;
    Sinon, tu as aussi a ta disposition, des méthodes et propriétés, pour gérer ta liste comme une base de données :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    property IndexCourant:Integer read GetIndexCourant write SetIndexCourant;
        Procedure First;
        Procedure Prior;
        Procedure Next;
        procedure Last;
        procedure Post;
        procedure Cancel;
        procedure New;
        procedure Del;
        property IsEditing:boolean read FIsEditing write SetIsEditing;
        property FicheCourante:TFiche read GetFicheCourante write SetFicheCourante;
        property OnEditingChange:TNotifyEvent read FOnEditingChange write SetOnEditingChange;
        property OnBrowse:TNotifyEvent read FOnBrowse write SetOnBrowse;
    Enfin, tu as a ta disposition deux évènement qui te permettent, par exemple, de mettre à jour tes contrôles :
    OnBrowse te permet de savoir si on s'est déplacé dans la liste (IndexCourant a changé)
    OnEditingChange te permet de savoir si il y a eu une modif danss la fiche courante
    Fichiers attachés Fichiers attachés

  20. #20
    Membre éprouvé Avatar de der§en
    Homme Profil pro
    Chambord
    Inscrit en
    Septembre 2005
    Messages
    853
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Chambord
    Secteur : Transports

    Informations forums :
    Inscription : Septembre 2005
    Messages : 853
    Points : 1 193
    Points
    1 193
    Par défaut
    Merci WasKol, ce genre de code peut toujours servir, je vais me le mettre au chaud.

    Der§en.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 14/01/2011, 10h09
  2. Question sur la sélection de donnée dans une base
    Par Masmeta dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/04/2008, 16h16
  3. [SQL 2000] Question sur les types de données
    Par Angath dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/11/2006, 14h05
  4. [Délestage]question sur les sauvegardes
    Par stephan55 dans le forum Oracle
    Réponses: 12
    Dernier message: 14/06/2006, 14h50
  5. question sur le rafraichissement des données dans la base
    Par vbcasimir dans le forum Bases de données
    Réponses: 8
    Dernier message: 06/06/2005, 12h44

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