MFC insertion oracle

Signaler
Messages postés
12
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
22 décembre 2005
-
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Salut, je suis entraîne de développer un application de gestion en se connectant à une base oracle : les instruction la déçu s’exécute sans problème ;


mydb.OpenEx( _T( "ODBC;Oracle;UID=sysrubis"


mydb.ExecuteSQL("insert into TBIO values (‘bio1’)");


Je veux personnaliser mon code, la requête doit contenir un autre type par exemple déclarer un string monSTR , et l’encapsuler dans ma requête SQl ;


j ai déjà essaie de faire ça mais ça marche pas ;




string monSTR ="bio1";





CString lpszSQL ;


lpszSQL ="insert into TBIO values";


lpszSQL += monSTR;


lpszSQL =")";


mydb.ExecuteSQL(lpszSQL);error C2679: '+=' binaire : aucun opérateur trouvé qui accepte un opérande de partie droite de type 'std::string' (ou il n'existe pas de conversion acceptable)


quelqu’un peux m’aider, et merci d’avance.

6 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
lpszSQL.s_str()

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
12
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
22 décembre 2005

Ca marche pas je trouve pas cette fonction dans les fonction membre de lpzSQl, (je développe sur VISUAL CPP) je ne sais pas si je me suis bien fait comprendre, en fait je veux envoyer des insertions sur différentes type de données bite, ou XML, je pense pas que on peut l'encapsuler dans une simple requête SQL STRING, y a pas une autre moyen que je peux utiliser pour gérer ma base sans passer par des requête directe?
Messages postés
66
Date d'inscription
jeudi 6 octobre 2005
Statut
Membre
Dernière intervention
18 janvier 2006

en gros tu veux faire une appli de BDD en VCPP plus precisement en MFC
et tu veutpasser par un autre moyen que les requetes direct ?

lol ben c'est xactement mon projet de travail !

j'utilise ADOLib : une librairie encapsulé pour les bases de données via MFC

tu vas voir c'est tres bien expliquer: telecharge la doc et la lib

lis bien la doc : passe une journee aide toi des exemple dans la doc et
normalement ça marche impeccable MP moi si tu as un probleme avec cette
lib ;)

Voici l'URL ou tu peu la DL : http://www.adolib.be.tf/

la lib : http://users.skynet.be/fa302290/ADOLib.zip

la doc : http://users.skynet.be/fa302290/ADOLib.PDF
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
CString a un opérateur (LPCTSTR) pour conversion.
Sur VC++ on peut employer tellement de technos que ça n'indique pas grand chose.
Si tu dois manipuler fortement l'intérieur des champs, il est certain que les instructions SQL ne sont plus adaptées, il te faudra récupérer leur valeur, la traiter et ensuite la réinjecter.
Avec ADO on fait cela très simplement:
_variant_t var;
_RecordsetPtr prs;
var = prs->Fields->GetItem((long)2)->Value; // 3eme CHAMP
....
prs->Fields->GetItem((long)3)->Value = var;

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
Messages postés
12
Date d'inscription
mercredi 12 mai 2004
Statut
Membre
Dernière intervention
22 décembre 2005

Merci 39449 BruNews et bien sur toi aussi =593252 ekinox17 , je vais essaie de voire dans le côte d'ADO, j'espere que ca sera simple comme avec ODBC
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
27
Alors va tranquille, ADO est nettement plus simple qu'ODBC.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++