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

MS SQL Server Discussion :

SQL Server 05 invalid data for type numeric


Sujet :

MS SQL Server

  1. #1
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    Bonsoir à tous,
    j'ai une procédure stockée dans laquelle j'ai fait un openquery() qui utilise un lien sur une base oracle, tout marchait bien jusqu'au jour où je reçois le message suivant:'invalid data for type numeric'. après investigation j'ai remarqué que c'est une colonne qui posait problème, j'ai effectué un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     to_char(colonne) as colonne
    et un et bien d'autres choses préconisées sur le net mais anyway!

    merci de m'aider à trouver où se trouve le problème.

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    Tu peux identifier le type de la colonne Oracle ?
    Est-ce pour faire une importation dans SQL Server ?

  3. #3
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    justement c'est pour une importation.

    sous oracle la colonne est de type numeric(10)

    sous sql server elle est de type float. j'ai essayé avec real,int,varchar même mais rien.

  4. #4
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    On part à la pêche ...

    C'est peut-être une valeur nulle que SQL Server n'arrive pas à convertir.
    as-tu essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ISNULL(colonne, 0) AS colonne

  5. #5
    Membre expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Points : 3 173
    Points
    3 173
    Par défaut
    invalid data for type numeric
    L'erreur est remontée par ORACLE et non SQL SERVER à priori... changer le type côté SQL SERVER ne changera rien.

    Quelle est la requête executée côté ORACLE? postez là l'erreur doit venir de là.

  6. #6
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    j'ai copié et coller la requête dans Toad, l'execution a passé mais dès que je la met dans le openquery(), ça plante avec la même erreur.

    voici en gros à quoi la requête ressemble:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    insert into ma_table select * from openquery(link_con,'select * from ma_table')

  7. #7
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 792
    Points
    4 792
    Par défaut
    as-tu essayé uniquement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT * FROM openquery(link_con,'select * from ma_table')
    pour éliminer le problème éventuel de structure de la table SQL Server qui reçoit les données

  8. #8
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    j'ai essayer ce que Nepo à conseiller, cette fois ci il me retourne deux onglets dans le premier il me met des lignes vides dans le deuxième il affiche le même message d'erreur. En gros y a pas un grand changement!

    ce qui m'étonne, c'est que le problème est apparu brusquement.

    je suis entrain de me demandé si ça ne serait pas un problème de configuration par hasard dans Oracle soit dans SQL Server, j'ai vu quelque part sur Internet où on conseiller de mettre OraOLEBD.oracle à 1 pour pouvoir résoudre ce problème, vu que je ne sais pas ce que sait,ni comment faire j'ai oublié. Si quelqu'un peut me dire comment mettre OraOLEBD.oracle à 1 je vais essayer voir.

    merci!

  9. #9
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    mon serveur SQLServer n'as pas de provider OraOleDB.oracle, je suppose que le problème vient de là. si quelqu'un peut me dire comment créer un provider oracle sur SQL Server.

    merci!

  10. #10
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    La solution se trouve apparemment ici.

    Attention si vous êtes en 32 bits

    @++

  11. #11
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    Slt,

    voici le message que je réçois quand je tente ce que elsuket m'a proposé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
         create failed for linkedServer (SqlManagerUI)
     
         An Exception occured when executing an Transact-SQL Statment or batch.
         (Microsoft.sqlserver.ConnectionInfo).
     
         NULL is an invalid product name. (Microsoft Sql Server, Error:15429)
    de quelle transactio SQL il est question? de quelle valeur Null il est question?

    prière m'expliquer ce message d'erreur et ce qui peut la provoquer. merci!

  12. #12
    Expert éminent sénior
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Points : 12 891
    Points
    12 891
    Par défaut
    Mettez nous le code que vous avez exécutez ....

    ++

  13. #13
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut
    voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    EXEC sp_addlinkedserver 'srvBF', 'Oracle', 'OraOLEDB.Oracle',BUR:1521/DB_Phone'
    l'exécution passe mais sans effet.

    quand j'essaie avec l'interface graphique cad clique droit sur Server Object->New->Linked server, je saisi le nom du lien, ça passe mais quand je choisis OraOleDb.oracle comme provider,je reçois le message ci dessous que j'ai indiqué.

    je ne sais pas ce qui peut provoquer ça. faut il installer un logiciel? ou c'est juste une config. merci de m'aider;

  14. #14
    Membre régulier Avatar de Moine
    Inscrit en
    Mars 2006
    Messages
    210
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 210
    Points : 90
    Points
    90
    Par défaut SQL Server 05 invalid data for type numeric
    Bonjour à tous,

    J'ai trouvé ma solution, il se trouve qu'une réinstallation rétablit les Provider. J'ai fait des essais sur mon Laptop, il reste maintenant à l'appliquer au serveur. Vu que c'est une base en production, je ne souhaite pas prendre de risque. Je voudrais que quelqu'un me donne l'emplacement de tous les fichiers sensibles de SQL Server (fichiers de données,de config,etc.) de sorte qu'après la réinstallation je puisse revenir à la dernière config, c'est absolument nécessaire.

    merci de m'aider!

Discussions similaires

  1. [SQL Server 2K] : Invalid column name
    Par Kyles dans le forum Langage SQL
    Réponses: 4
    Dernier message: 22/05/2006, 12h02
  2. [MS SQL Server vers MySql4] Equivalence de Type ?
    Par M1000 dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 26/04/2006, 18h58
  3. [SQL Server] Modifier un ID de type Identity
    Par BoOom dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/04/2006, 09h37
  4. [SQL Server] Error converting data type varchar...
    Par Sir Tengu dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 13/06/2003, 10h46

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