Précédent   Forum des professionnels en informatique > Bases de données > Oracle > Interfaces de programmation
Interfaces de programmation Forum d'entraide sur l'utilisation des API Oracle : Pré-compilateurs, OCI, OCCI, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/05/2011, 10h28   #1
Invité de passage
 
Inscription : janvier 2010
Messages : 21
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 21
Points : 4
Points : 4
Par défaut [OCILIB] Connexion a une base de donnee oracle

Bonjour a tous..j'ai besoin de votre aide pour pouvoir avancer dans mon projet.alors voila j'ai choisi le OCILIB 3.9.0 et le compilateur visual studio 2005 pour pouvoir traiter une table dans ma base de donnée oracle 10g. je commence par faire la connexion entre la BD et VS mais ca bloque , voila le code que j'ai écrit:


Code c :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <windows.h>
 
#include <stdafx.h>
#include "ocilib.h"
 
 
 
int main(int argc, char *argv[])
{
OCI_Connection* cn;
OCI_Statement* st;
OCI_Resultset* rs;
 
OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT);
 
cn = OCI_ConnectionCreate("localhost", "gestioncommerce", "saf", OCI_SESSION_DEFAULT);
st = OCI_StatementCreate(cn);
 
OCI_ExecuteStmt(st, "select intcol, strcol from magazin");
 
rs = OCI_GetResultset(st);
 
while (OCI_FetchNext(rs))
{
printf("%i - %s\n", OCI_GetInt(rs, 1), OCI_GetString(rs,2));
}
 
OCI_Cleanup();
 
return EXIT_SUCCESS;
  return 0;
}

Mais le résultat est décevant :
Citation:
Erreur 1 error LNK2019: symbole externe non résolu _OCI_Cleanup@0 référencé dans la fonction _main ProgramC.obj
Erreur 2 error LNK2019: symbole externe non résolu _OCI_GetInt@8 référencé dans la fonction _main ProgramC.obj
Erreur 3 error LNK2019: symbole externe non résolu _OCI_GetString@8 référencé dans la fonction _main ProgramC.obj
Erreur 4 error LNK2019: symbole externe non résolu _OCI_FetchNext@4 référencé dans la fonction _main ProgramC.obj
Erreur 5 error LNK2019: symbole externe non résolu _OCI_GetResultset@4 référencé dans la fonction _main ProgramC.obj
Erreur 6 error LNK2019: symbole externe non résolu _OCI_ExecuteStmt@8 référencé dans la fonction _main ProgramC.obj
Erreur 7 error LNK2019: symbole externe non résolu _OCI_StatementCreate@4 référencé dans la fonction _main ProgramC.obj
Erreur 8 error LNK2019: symbole externe non résolu _OCI_ConnectionCreate@16 référencé dans la fonction _main ProgramC.obj
Erreur 9 error LNK2019: symbole externe non résolu _OCI_Initialize@12 référencé dans la fonction _main ProgramC.obj

Merci d'avance pour votre aide.
butterflie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 15h33   #2
Rédacteur/Modérateur
 
Avatar de Vincent Rogier
 
vincent rogier
Inscription : juillet 2007
Messages : 2 355
Détails du profil
Informations personnelles :
Nom : vincent rogier
Âge : 34

Informations forums :
Inscription : juillet 2007
Messages : 2 355
Points : 3 108
Points : 3 108
salut,


1 - tu n'as pas ajouté ociliba.lib aux options du linker
2 - ca m'étonnerait que ton alias du tnsnames soit "localhost"...
__________________
Vincent Rogier.

Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

OCILIB (C Driver for Oracle)

Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle
Vincent Rogier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/05/2011, 21h39   #3
Invité de passage
 
Inscription : janvier 2010
Messages : 21
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 21
Points : 4
Points : 4
Un grand grand merci a toi ..effectivement j'avais mal positionné le .lib .les messages d'erreur ont disparu mais ma table ne s'affiche pas, j'ai fais qlq recherche et j'ai changé le nom du "db" avec celui trouver dans le fichier 'tnsnames.ora' mais le problème persiste encore..Merci de regarder si vous pouvez faire quelque chose pour moi.
butterflie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 01h16   #4
Invité de passage
 
Inscription : janvier 2010
Messages : 21
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 21
Points : 4
Points : 4
j'ai ajouté un handler a mon code pour que je sache exactement le problème et voila ce j'ai eu après exécution :

code : ORA-00904
msg : ORA-00904: "STRCOL" : identificateur non va

sql : select intcol, strcol from client
code : ORA-00000
msg : The statement must be described to perform
sql : select intcol, strcol from client
code : ORA-00000
msg : A null Resultset handle has been provided
sql : (null)
butterflie est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 06h40   #5
Rédacteur/Modérateur
 
Avatar de Vincent Rogier
 
vincent rogier
Inscription : juillet 2007
Messages : 2 355
Détails du profil
Informations personnelles :
Nom : vincent rogier
Âge : 34

Informations forums :
Inscription : juillet 2007
Messages : 2 355
Points : 3 108
Points : 3 108
le message est clair : La table "magazin" n'as pas de colonne "strcol'.....
__________________
Vincent Rogier.

Rubrique ORACLE : Accueil - Forum - Tutoriels - FAQ - Livres - Blog

Vous voulez contribuer à la rubrique Oracle ? Contactez la rubrique !

OCILIB (C Driver for Oracle)

Librairie C Open Source multi-plateformes pour accéder et manipuler des bases de données Oracle
Vincent Rogier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2011, 22h46   #6
Invité de passage
 
Inscription : janvier 2010
Messages : 21
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 21
Points : 4
Points : 4
Merci beaucoup pour ta réponse
butterflie est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h29.


 
 
 
 
Partenaires

Hébergement Web