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

C++Builder Discussion :

Requ�te SQL avec param�tres


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Par d�faut Requ�te SQL avec param�tres
    Bonjour,

    Je voudrais cr�er une requ�te avec plusieur param�tre avant de l'executer ! mais je ne sais pas comment former un requ�te SQL en C++

    Voici mon code:

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
     
    std::string requete;
     
    		if(parameter != "Type"){
    			requete = "INSERT INTO Ellipse(ID," + parameter + ") VALUES ('2','" + value + "')";
    			FPrinc->IBQEllipse->SQL->Text = requete  ;
    			FPrinc->IBQEllipse->ExecSQL();
    		}
    et voici mon message d'erreur :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    [C++ Error] ParamBdd.cpp(60): E2034 Cannot convert 'std::string' to 'AnsiString'
    Merci beaucoup

  2. #2
    Membre �prouv�
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifi�)
    Inscrit en
    D�cembre 2004
    Messages
    2 059
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : OPNI (Objet Programmant Non Identifi�)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 2 059
    Par d�faut
    Bonsoir,

    As tu essay� d'utiliser plut�t un 'string' ou un 'AnsiString' ?
    Du genre:
    tout simplement ...

    @+

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Par d�faut
    merci mais nn c'a fonctionne pas !!

    mais comment faite vous pour faire ce genre de chose ? en temps normal

    J'arrive a faire ce genre de manip en php, Java .. mais alors C++ ... je vois pas comment fair lol

    Aidez moi

  4. #4
    Membre �prouv�
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifi�)
    Inscrit en
    D�cembre 2004
    Messages
    2 059
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : OPNI (Objet Programmant Non Identifi�)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 2 059
    Par d�faut
    Bonsoir,

    Essaies qqchose comme:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
     
    AnsiString requete;
    ///
    requete = AnsiString("INSERT INTO Ellipse(ID,") + parameter + (") VALUES ('2','") + value + ("')");
    Par pr�caution, j'aurais eu tendance a demander (pour moi et tous ceux en mesure d'aider) qq d�tails suppl�mentaires tels que:
    quel est exactement le dernier test fait ?, quel est le dernier message d'erreur ?, sur quel type de base de donn�es travailles-tu ?, quels type d'objets orient�s donn�s? (TQuery, etc ?)

    En esp�rant t'aider,
    @+

  5. #5
    Membre confirm�
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Par d�faut
    marche toujour pas

    Alors la fonction que je test :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	void ParamBdd::Sauve(std::string parameter, std::string value) const
    	{
    		std::string requete;
     
    		if(parameter != "Type"){
    			requete = AnsiString("INSERT INTO Ellipse(ID,") + parameter + (") VALUES ('2','") + value + ("')");
    			FPrinc->IBQEllipse->SQL->Text = requete  ;
    			FPrinc->IBQEllipse->ExecSQL();
    		}
     
    	}
    Les test est juste d'effectuer une requ�te a l'appel de cette fonction

    Les messages d'erreur retourn�s sont :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    [C++ Error] ParamBdd.cpp(59): E2094 'operator+' not implemented in type 'AnsiString' for arguments of type 'std::string'
    [C++ Error] ParamBdd.cpp(60): E2034 Cannot convert 'std::string' to 'AnsiString'
    Donc effectivement j'utilise un composant TQuery sur une base de donn�e Interbase 7.5

    Je m'y prend peut etre mal il y as peut etre un autre moyen d'executer une requ�te SQL en C++...

    Merci

  6. #6
    Membre �prouv�
    Avatar de Sunchaser
    Homme Profil pro
    OPNI (Objet Programmant Non Identifi�)
    Inscrit en
    D�cembre 2004
    Messages
    2 059
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 54
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activit� : OPNI (Objet Programmant Non Identifi�)
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : D�cembre 2004
    Messages : 2 059
    Par d�faut
    Bonsoir,

    Ben disons que je ne comprends pas pourquoi il te faut imp�rativement utiliser pour cela des appels a 'std::etc ...', alors que tu devrais utiliser des 'concepts' de la VCL de Borland (String et AnsiString).

    Donc, la fonction 'facon' builder pourrait �tre:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    void __fastcall ParamBdd::Sauve(String parameter, String value) 
    	{
    		String requete;
     
    		if(parameter != "Type"){
    			requete = AnsiString("INSERT INTO Ellipse(ID,") + parameter + (") VALUES ('2','") + value + ("')");
    			FPrinc->IBQEllipse->SQL->Text = requete  ;
    			FPrinc->IBQEllipse->ExecSQL();
    		}
     
    	}
    mais je ne dis pas que c'est mieux ou bien, je pense juste que dans un 'contexte' builder, ca devrais marcher ...

    @+

Discussions similaires

  1. R�ponses: 8
    Dernier message: 05/03/2012, 15h36
  2. Requ�te SQL avec param�tre sous visual studio 2008
    Par Jeecer dans le forum Acc�s aux donn�es
    R�ponses: 3
    Dernier message: 21/08/2011, 10h18
  3. Appel requ�te SQL avec param�tre
    Par sgcb01 dans le forum SAP Crystal Reports
    R�ponses: 4
    Dernier message: 13/11/2008, 12h13
  4. Requ�te SQL avec param�tre sur BDD Access
    Par BigMike dans le forum Windows Forms
    R�ponses: 3
    Dernier message: 07/06/2007, 12h21
  5. requ�te SQL avec param�tre en vb avec base de donn�e SQL srv
    Par dialydany dans le forum VB 6 et ant�rieur
    R�ponses: 5
    Dernier message: 01/02/2005, 10h33

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