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

Firebird Discussion :

génération script sql


Sujet :

Firebird

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Par défaut génération script sql
    Salut,
    Comment générer un script SQL des données d'une requette

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Mai 2006
    Messages : 249
    Par défaut
    Voilà si vous utilisez delphi, sinon vous pouvez facilement le convertir.
    Vous devez exécutez la requête puis appelez cette fonction avec comme paramètre le nom de la requête.
    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
     
    procedure Formuler(Query1:TDataSet);
    var Insert    : String;
        Fields    : String;
        Params    : String;
        field     :string;
        I         : Integer;
        req       :TSTringList;
    Begin
      req:=TStringList.create;
      Insert := 'INSERT INTO  (';
     
      For I:=0 To Query1.Fields.Count-1 Do
      Begin
        IF (Query1.Fields[I].FieldKind = fkData) Then
        Begin
          IF ( I > 0 ) Then
            Fields := Fields + ', ';
          Fields := Fields + Query1.Fields[I].FieldName;
        End;
      End;
     
      Fields := Fields + ')';
     
    Query1.First;
    While Not(Query1.Eof) Do
    Begin
      req.Add( Insert );
      req.Add( Fields );
      Params := 'VALUES (';
      For I:=0 To Query1.Fields.Count-1 Do
      Begin
        IF (Query1.Fields[I].FieldKind = fkData) Then
        Begin
          IF ( I > 0 ) Then Params := Params + ', ';
          if (Query1.Fields[I] is TStringField) then field:='"'+Query1.Fields[i].AsString+'"'
                                                else field:=Query1.Fields[i].AsString;
          Params := Params + field;
        End;
      End;
      Params := Params + ')';
      req.Add( Params );
      Query1.Next;
    End;
    req.SaveToFile('c:\resultat.sql');
    req.free;
    end;

  3. #3
    Membre confirmé Avatar de zoheir13
    Inscrit en
    Décembre 2006
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 114
    Par défaut
    Merci

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

Discussions similaires

  1. Génération script SQL
    Par erox44 dans le forum Shell et commandes GNU
    Réponses: 34
    Dernier message: 12/07/2013, 10h30
  2. Génération automatique de script SQL
    Par Prjprj dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 07/11/2007, 15h35
  3. Power AMC, génération script SQL
    Par davasm dans le forum PowerAMC
    Réponses: 1
    Dernier message: 24/05/2006, 16h18
  4. [PAMC]génération d'un mcd à partir d'un script sql
    Par jounaidi dans le forum Sybase
    Réponses: 2
    Dernier message: 27/03/2006, 17h43
  5. Génération de script SQL avec les données
    Par borgfabr dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 05/03/2004, 13h57

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