MFC insertion oracle

softreda Messages postés 12 Date d'inscription mercredi 12 mai 2004 Statut Membre Dernière intervention 22 décembre 2005 - 30 nov. 2005 à 16:22
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019 - 1 déc. 2005 à 21:03
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

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
30 nov. 2005 à 16:57
lpszSQL.s_str()

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
softreda Messages postés 12 Date d'inscription mercredi 12 mai 2004 Statut Membre Dernière intervention 22 décembre 2005
1 déc. 2005 à 09:52
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?
0
ekinox17 Messages postés 66 Date d'inscription jeudi 6 octobre 2005 Statut Membre Dernière intervention 18 janvier 2006
1 déc. 2005 à 10:17
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
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 déc. 2005 à 10:21
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++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
softreda Messages postés 12 Date d'inscription mercredi 12 mai 2004 Statut Membre Dernière intervention 22 décembre 2005
1 déc. 2005 à 16:09
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
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 déc. 2005 à 21:03
Alors va tranquille, ADO est nettement plus simple qu'ODBC.

ciao...
http://dev.winsysdev.com
BruNews, MVP VC++
0
Rejoignez-nous