+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Membre du Club
    Inscrit en
    avril 2005
    Messages
    318
    Détails du profil
    Informations forums :
    Inscription : avril 2005
    Messages : 318
    Points : 69
    Points
    69

    Par défaut [SQLException] ORA-00984

    Bonjour ,
    Après
    Code :
    1
    2
    3
    4
    stmt.executeUpdate
    			   (
    			   "INSERT INTO POSITION VALUES (5,6,5,sw)"
    			   );
    Erreur SQL : java.sql.SQLException: ORA-00984: Un nom de colonne n'est pas autorisé ici
    je voudrais savoir si c'est le fait que la colonne est (NOT NULL) et clé primaire ?

  2. #2
    Membre éclairé

    Inscrit en
    septembre 2003
    Messages
    432
    Détails du profil
    Informations forums :
    Inscription : septembre 2003
    Messages : 432
    Points : 360
    Points
    360

    Par défaut

    Non en fait oracle à la gentillesse de dire, que tu ne peux pas utilier des nom de colonne ici

    Oracle comprends que sw est un champs car pour lui une chaine est entre côtes 'sw'

    Donc si tu veux faire un insert into 2 solutions :

    1) tu souahites gérer tous les champs (colonne) de la table
    on suppose ici que la table POSITION a 4 champs
    Code :
    1
    2
    3
    4
    5
     
    stmt.executeUpdate 
                ( 
                "INSERT INTO POSITION VALUES (5,6,5,'sw')" 
                );
    2) tu souahites gérer que 4 chamsp sur les 10 champs que comporte la table
    Code :
    1
    2
    3
    4
    5
     
    stmt.executeUpdate 
                ( 
                "INSERT INTO POSITION(champs1,champs2,champs3,champs4) VALUES (5,6,5,'sw')" 
                );
    De toute facon dans VALUES, tu ne peux avoir que des données dites de valeurs (number 2, chaine 'toto', date sysdate ou to_date('01/05/2008','DD/MM/YYYY')

  3. #3
    Membre du Club
    Inscrit en
    avril 2005
    Messages
    318
    Détails du profil
    Informations forums :
    Inscription : avril 2005
    Messages : 318
    Points : 69
    Points
    69

    Par défaut

    Ok merci l'ami

  4. #4
    Membre chevronné
    Avatar de plabrevo
    Inscrit en
    décembre 2005
    Messages
    547
    Détails du profil
    Informations forums :
    Inscription : décembre 2005
    Messages : 547
    Points : 662
    Points
    662

    Par défaut

    Une regle d'or: Toujours accompagner les ordres INSERT avec la liste explicite des colonnes inserees. Ceci pour preserver l'application contre les manipulations de restructuration de la bd qui pourraient inverser l'ordre des colonnes, et accessoirement, pour ne pas avoir a revoir toute l'application lorsque des colonnes (nulles) sont ajoutees au modele de donnees

  5. #5
    Membre expérimenté Avatar de star
    Inscrit en
    février 2004
    Messages
    586
    Détails du profil
    Informations forums :
    Inscription : février 2004
    Messages : 586
    Points : 583
    Points
    583

    Par défaut

    On peut aussi faire de la sorte :
    Code :
    INSERT INTO departments VALUES dept_info;
    http://download-west.oracle.com/docs....htm#sthref654
    .

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •