Requete sql avec parametres sous builder 6

Messages postés
4
Date d'inscription
jeudi 19 mars 2015
Statut
Membre
Dernière intervention
24 mars 2015
-
salut les gars !
avant toute chose j'aimerais vous prévenir, je ne suis pas très expérimenté en programmation sous builder.
mon problème est le suivant: je voudrais écrire un petit programme qui permet grâce aux objet BDE de builder, de se connecter à une base mysql et de faire une requête d'insertion de données lorsqu'on appuis sur un boutton.
en plus j'aimerai que cette requête prenne en paramètre trois variables de type entiers.
j'ai essayer de produire un bout de code qui envoie des valeurs statiques à la base, sa compile bien mais ne transfert aucune données.
voici le code:

#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#pragma package(smart_init)
#pragma resource "*.dfm"

TForm1* Form1;

__fastcall TForm1::TForm1(TComponent* Owner)
  : TForm(Owner)
{
}

void __fastcall TForm1::Button1Click(TObject* Sender)
{
  Session1->Open();
  Database1->Open();
  Query1->SQL->Add("INSERT INTO donnee(num_donnee, temperature, intensite_lumineuse) VALUES(NULL, 12, 13)");
  Query1->Close();
  Database1->Close();
  Session1->Close();
}


merci à tous ceux qui vont se pencher sur la question.
Afficher la suite 

2 réponses

Messages postés
1137
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
23 janvier 2016
17
0
Merci
Salut,

je ne connais pas builder mais une petite recherche montre qu'il faut au moins une de ces 2 instructions pour déclencher la commande :

Query1->Open();
//ou
Query1->ExecSQL();


bye..
Commenter la réponse de yann_lo_san
Messages postés
4
Date d'inscription
jeudi 19 mars 2015
Statut
Membre
Dernière intervention
24 mars 2015
0
Merci
Salut les gars, j'ai finalement trouvé la reponse à ma question.
Voici ce que ça donne (on ne sait jamais, quelqu'un en aura peut être besoin un jour):
{
  AnsiString phrase1;
  Session1->Open();
  Database1->Open();
  Query1->SQL->Text = Format("INSERT INTO Donnee VALUES (0,%s)", ARRAYOFCONST(phrase1));
  Query1->ExecSQL();
  Query1->Close();
  Database1->Close();
  Session1->Close();
}


Merci yann !!!
Commenter la réponse de brice_mougoue