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

Langage SQL Discussion :

Problème typage donnée


Sujet :

Langage SQL

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 252
    Points
    252
    Par défaut Problème typage donnée
    Bonjour,

    J'ai un problème que quelque chose que je pensais très simple. Quand j'exécute il me met que c'est du caractère attendu alors que je lui donne du nombre:
    "types de données incohérents ; attendu : CHAR ; obtenu : NUMBER"

    mon instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    case when (C.ID_DPT in ('17130','20027')) then 01 else C.FL_DPT end,
    J'ai essayé to_char() mais il me met toujours le même message.

    Merci pour votre aide

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 262
    Points : 12 936
    Points
    12 936
    Par défaut
    Bonjour,
    C'est simple: 01 est un nombre, et le moteur attend une chaine, donc '01'.

    Tatayo.

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 252
    Points
    252
    Par défaut
    Malheureusement, c'est ce que j'avais écrit par défaut en premier et ça ne marche pas.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 262
    Points : 12 936
    Points
    12 936
    Par défaut
    Et quel est le type de C.FL_DPT ?
    Sinon ce serait bien de nous donner la requête complète, ainsi que la description des tables impliquées.

    Tatayo.

  5. #5
    Membre actif
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 252
    Points
    252
    Par défaut
    Dans les propriétés de la table, C.FL_DPT est en NUMBER(38,0) pour DATA_TYPE

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 262
    Points : 12 936
    Points
    12 936
    Par défaut
    Le moteur t'indique qu'il attend une chaine, et dans la requête tu prends une colonne de type number (C.FL_DPT) ou un nombre (01).
    Ne cherche pas plus loin, le problème est là.
    Maintenant on ne peut pas dire pourquoi le moteur attend une chaine, vu qu'on ne vois pas le reste de la requête.

    Tatayo.

  7. #7
    Membre actif
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 310
    Points : 252
    Points
    252
    Par défaut
    C'est bon, j'ai essayé simplement avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    case when (C.ID_DPT in ('17130','20027')) then to_number(01) else C.FL_DPT end,

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

Discussions similaires

  1. [Tcl/Tk] Problème accès données
    Par Sébastien Hamel dans le forum Tcl/Tk
    Réponses: 1
    Dernier message: 11/07/2006, 11h39
  2. [MySQL] problème ajout donnée dans BDD via php
    Par Skeud007 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 29/05/2006, 23h41
  3. [SQL] Moteur de recherche problème affichage donnée dans select
    Par vincedjs dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 07/04/2006, 20h27
  4. [débutant] problème affichage données table ds TDBGrid
    Par lidouka dans le forum Composants VCL
    Réponses: 1
    Dernier message: 16/12/2005, 13h50
  5. problème ajout données avec db.execute et access
    Par Dauphind dans le forum Access
    Réponses: 2
    Dernier message: 29/11/2005, 12h03

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