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

Oracle Discussion :

[ODBC] Probleme de consomateur ODBC avec Oracle


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 11
    Points : 10
    Points
    10
    Par défaut [ODBC] Probleme de consomateur ODBC avec Oracle
    Bonjour,

    Avant d'exposer mon probleme je situe un peu le contexte

    Je suis actuellement en train de realiser un petit logiciel dans le cadre de mes études qui doit fonctionner sous Oracle et Access.
    N'ayant pas la place d'installer Oracle chez moi j'ai decider d'utiliser tout d'abord Access pour travailler en local.

    Une fois le gros du travail fait, j'ai recréé ma BDD sur le server oracle de mon ecole ( meme nom de table données etc ...), je configure mon DSN correctement et je lance le programme qui arrive a recuperer des valeurs mais refuse de les stockés ds mes consomateur ( fait a partir de la base access) .

    Je decide de créer un nouveau consomateur ODBC a partir de mes tables Oracle pour voir la difference et là ... surprise ! Les données définies en tant qu'entier ds ma base Oracle ( de type integer) se retrouve etre des doubles dans le consomateur ODBC !

    Le probleme est que je voudrais manipuler des entiers dans mon code C++ et non pas des double

    J'ai essayé de changer mon type de integer vers long sous oracle mais ce type ne permet pas de définir ma donnée en clef primaire sous oracle.

    Comment puis je faire pour que mes consomateurs ODBC voient bien mes données comme des entiers et non des doubles ?

    Voici quelques lignes de code que j'ai utilisé pour mieux situer le probleme :


    Mon script sql :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    CREATE TABLE Personne
    (
            Id_Personne integer,
            Nom_personne varchar2(50),
            Prenom_personne varchar2(50),
            Adresse_Rue varchar2(50),
            Adresse_CP varchar2 (50),
            Adresse_Ville varchar2(50));
     
    ALTER TABLE Personne ADD CONSTRAINT PK_PERSONNE primary key(Id_Personne);
    Et voici le code du consomateur ODBC créé a partir de cette table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
     
    class CPERSONNE : public CRecordset
    {
    public:
    	CPERSONNE(CDatabase* pDatabase = NULL);
    	DECLARE_DYNAMIC(CPERSONNE)
     
     
    	double	m_ID_PERSONNE;
    	CString 	m_NOM_PERSONNE;
    	CString 	m_PRENOM_PERSONNE;
    	CString 	m_ADRESSE_RUE;
    	CString 	m_ADRESSE_CP;
    	CString 	m_ADRESSE_VILLE;

    Voila j'espere que quelqu'un pourra m'aider

  2. #2
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Sous Oracle, il n'y a pas de notion de INTEGER ou REAL, simplement des NUMBER.
    Quant aux LONG, ce ne sont pas des nombres réels mais des zones pour stocker de très gros volumes de caractères !!!

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 11
    Points : 10
    Points
    10
    Par défaut
    Ah d'accord ceci explique cela alors
    Je comprend pourquoi mon DESC m'affichais un NUMBER( 38 ) merci ! Je debute sous oracle donc j'avais pas penser à ça

    Merci pour ta réponse rapide !

  4. #4
    Membre expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Points : 3 199
    Points
    3 199
    Par défaut
    Merci alors de penser à cliquer sur le bouton ! ;-)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. odbc+bde avec oracle
    Par geo2040z dans le forum Bases de données
    Réponses: 1
    Dernier message: 02/07/2008, 09h37
  2. Réponses: 7
    Dernier message: 03/05/2007, 16h30
  3. Connexion ODBC avec Oracle
    Par Alvaten dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 24/11/2006, 09h44
  4. [ODBC] Problème de liens ODBC
    Par Poile dans le forum Access
    Réponses: 10
    Dernier message: 28/09/2006, 15h16
  5. Réponses: 14
    Dernier message: 01/09/2003, 15h54

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