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

Powerbuilder Discussion :

Migration client Oracle et source PB pose soucis


Sujet :

Powerbuilder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Doctor Z
    Inscrit en
    Mars 2004
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 88
    Par défaut Migration client Oracle et source PB pose soucis
    Bonjour à tous.

    J'ai une application écrite sous PowerBuilder 6.5.1, connectée à un client
    Oracle 7.3.4 et géré par Windows NT4 SP6. Ce poste se connecte à un serveur
    Windows NT4 Server SP6 sur lequel existe une base de données Oracle Server
    7.3.4.

    J'ai migré cette application sous PowerBuilder 10.2.1, se connectant au même
    serveur (Windows NT4 Server SP6, Oracle Server 7.3.4) par le biais d'un client
    Oracle8i (8.1.7).

    La migration du code PowerBuilder en soit a subi quelques modifications
    mineures. Cependant, l'accès d'un client Oracle8i à un serveur Oracle 7.3.4
    semble poser des problèmes. En effet, dans des cas bien spécifique, j'obtiens
    les erreurs ORA-01438, ORA-01722 et ORA-24374.

    D'après le site www.ora-code.com, voici la description de chacune de ces
    erreurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ORA-01438: value larger than specified precision allows for this column 
    Cause: When inserting or updating records, a numeric value was entered that 
    exceeded the precision defined for the column. 
    Action: Enter a value that complies with the numeric column's 
    precision, or use the MODIFY option with the ALTER TABLE command to 
    expand the precision.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ORA-01722: invalid number 
    Cause: The attempted conversion of a character string to a number failed 
    because the character string was not a valid numeric literal. Only numeric 
    fields or character fields containing numeric data may be used in arithmetic 
    functions or expressions. Only numeric fields may be added to or subtracted 
    from dates. 
    Action: Check the character strings in the function or expression. Check that 
    they contain only numbers, a sign, a decimal point, and the character "E" 
    or "e" and retry the operation.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ORA-24374: define not done before fetch or execute and fetch 
    Cause: The application did not define output variables for data being fetched 
    before issuing a fetch call or invoking a fetch by specifying a non-zero row 
    count in an execute call. 
    Action: Issue OCI define calls for the columns to be fetched.
    Pour être bien clair :
    Serveur :
    OS : Windows NT4 Server SP6
    Base de données : Oracle Server 7.3.4

    Client 1 : Totalement fonctionnel
    OS : Windows NT4 Workstation SP6
    Base de données : Oracle 7.3.4 (client)
    Source du logiciel : PowerBuilder 6.5.1 build 444

    Client 2 : Partiellement fonctionnel
    OS : Windows XP SP2
    Base de données : Oracle8i (8.1.7) (client)
    Source du logiciel : PowerBuilder 10.2.1 build 9597

    Le client 2 pose problème car sur certains cas bien spécifiques, le poste
    produit une des trois erreurs Oracle énoncé ci-dessus, de même que des
    "Null object reference".

    Dans le source, je n'ai fait que les corrections exigées par la migration.

    Par ailleurs, sur le client 1, j'ai installé Oracle8i (client) et par le biais du
    "Home selector", j'ai indiqué que je souhaitais travailler avec le client Oracle8i.
    J'ai refait mon test et je n'ai eut aucune des erreurs énoncées. En outre, je
    tiens à préciser que sur mon client 1, le driver ODBC Oracle est d'Intersolv,
    tandis que sur mon client 2, c'est celui d'Oracle.

    Enfin, j'ai tenté d'installer Oracle 7.3.4 (client) sur le client 2, mais ce dernier
    n'est pas compatible avec Windows XP SP2.

    J'espère avoir été suffisament clair.

    Toute aide ou piste sont les bienvenues !

    Par avance, merci:


  2. #2
    Membre du Club
    Inscrit en
    Mars 2003
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 9
    Par défaut
    Normalement chaque client supérieur à la base de données inferieurs sera compatible. Si tu utilise un client oracle 8 te pourra te connecté sur une base de données 7.

    Il faut consulter la doc de Oracle pour voir la compatibilité des différentes versions. Nous, on utilise Oracle 10g avec Client Oracle 9i. Comme j'ai dis il faut consulter la doc et faire ses propres testes.

    Je te conseil d'utiliser les driver natives d'oracle pour travailler sous PB. Cela t'évite à chaque fois de configurer tes clients. Tu distribuera seulement les DLL utiles pour les drivers natives.

    Si t'as base de données ne doit pas être trop gourmante tu peux installé la nouvelle version gratuite oracle express qui est moins puissante mais fera l'affaire si cela te convient

Discussions similaires

  1. Migration Access / Oracle
    Par Sylvestre_[ADF] dans le forum Oracle
    Réponses: 5
    Dernier message: 14/06/2006, 12h09
  2. Réponses: 3
    Dernier message: 11/10/2005, 09h46
  3. Client Oracle sous Windows
    Par linou dans le forum Oracle
    Réponses: 4
    Dernier message: 11/05/2005, 15h31
  4. [INNO SETUP][ORACLE] Installer le client Oracle avec Inno
    Par AnnSo dans le forum Bases de données
    Réponses: 11
    Dernier message: 19/08/2004, 16h21
  5. [PostGre] Migration de Oracle 8i vers PostGre ?
    Par delphim dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 21/04/2004, 17h04

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