Rechercher : dans
Par :

Connecter C++ à Oracle

Dernière réponse le 13 jun 2009 à 14:51:37 duxitto, le 12 jun 2009 à 21:49:59 
 Signaler ce message aux modérateurs

Bonsoir, je bloque depuis des heures sur un programme que je fais et que je dois rendre demain,
en résumé je suis sur Visual C++ 2008 et le langage est le C++, le programme est censé se connecter à une base oracle , lire les données dans une table puis les recopier dans une autre table en donnant après le temps d'exécution.
Actuellement , je bloque encore sur la connexion, j'utilise SQLAPI pour me connecter à oracle mais j'ai deux erreurs que je n'arrive pas à résoudre, merci de votre aide car j'en peux plus :(

voila le code du main

#include <iostream>
#include "classconnexion.h"
#include <SQLAPI.h> 

int main(int argc, char* argv[])
{
Connexion *conect;	
	conect=new Connexion("SYSTEM","515000","XE");
	conect->EtablirConnexion();
    system ("PAUSE");
	return 0;
}



voila celui de la classe connexion
#include <iostream>  
#include <SQLAPI.h>
#include <string>
using namespace std;


class Connexion {
private:
	string login;
	string mdp;
	string nomBase;
	SAConnection con;
	SAConnection con2;

	Connexion ();
	Connexion(const SAString&login,const SAString&mdp,const SAString&nomBase, SAClient_t eSAClient = SA_Client_NotSpecified )
		{
		
		this->login=login;
		this->mdp=mdp;
		this->nomBase=nomBase;
		this->con2.setClient(SA_Oracle_client);

	}
public:
	void Connexion::EtablirConnexion()
	{
		try
    {
      
        con.Connect(nomBase , login , mdp , con2);

        printf("We are connected!\n");
        
    }
    catch(SAException &x)
    {

        try
        {
            
            con.Rollback();
        }
        catch(SAException &)
        {
        }
       
        printf("%s\n", (const char*)x.ErrText());
    }

	}
};

et voila le .h

#include <string>
#include <SQLAPI.h>
class Connexion
{
public:
	Connexion();
	Connexion(std::string login,std::string mdp,std::string nomBase);
	~Connexion();
    void EtablirConnexion();

private:
	const SAString&login;
	const SAString&mdp;
	const SAString&nomBase;
	SAConnection con;
	SAConnection con2;
};


et enfin les erreurs :(


visual studio 2008\projects\porjetetl\porjetetl\classconnexion.cpp(22) : error C2065: 'SA_Oracle_client' : identificateur non déclaré

visual studio 2008\projects\porjetetl\porjetetl\classconnexion.cpp(31) : error C2664: 'SAConnection::Connect' : impossible de convertir le paramètre 1 de 'std::string' en 'const SAString &'

1> Raison : impossible de convertir de 'std::string' en 'const SAString'

merci pour tout coup de main
Configuration: Windows Vista
Firefox 3.0.11

Meilleures réponses pour « Connecter C++ à Oracle » dans :
Connexion à une base Oracle en php Voir1. Périmètre Cet article est un exemple de connexion à une base Oracle par le biais d'un script php. Cet article ne traite pas la configuration de votre serveur Oracle, et de votre client Oracle. Nous partons du principe que vous pouvez accéder à...
Oracle - Les requêtes hiérarchiques VoirCet article se base sur des tests et recherches réalisés dans la version 8.1.5 d'Oracle. Introduction Tout au long de cet article, nous allons nous intéresser à une structure de données permettant de créer un Forum de discussion, matérialisé par...
Le protocole FTP (File Transfer Protocol) VoirIntroduction au protocole FTP Le protocole FTP (File Transfer Protocol) est, comme son nom l'indique, un protocole de transfert de fichier. La mise en place du protocole FTP date de 1971, date à laquelle un mécanisme de transfert de...

1

 jalil, le 13 jun 2009 à 14:51:37

Il faut utiliser les api Win32 SGBD.
Demander chez les pros Win32 où toutes les méthodes ont été détaillées ( http://tinyurl.com/cvd7wv )

Répondre à jalil
Collection CommentÇaMarche.net