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

InterBase Discussion :

[Interbase 7] Problème d'insertion de données


Sujet :

InterBase

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut [Interbase 7] Problème d'insertion de données
    Bonjour à tous !

    Mon problème est le suivant :

    Je dois développer une application avec Jbuilder 8, et dans cette application je dois interroger une base de données.
    J'ai donc décider de travailler avec Interbase 7 pour le développement de ma base de données. J'ai créer mes tables, mais je n'arrive pas à les remplir !
    J'ai beau essayer, rien n'y fait, il m'envoye le message suivant :

    [interclient][interbase] Dynamic SQL Error
    [interclient][interbase] SQL error code = -104
    [interclient][interbase] Token unknown - line, char 12
    [interclient][interbase] "DONNEES"

    Par contre quand je le fais avec une base de données tirée des exemples de Jbuilder, tout fonctionne !
    Si quelqu'un peut m'aider, ce serait sympa ! Merci d'avance !

  2. #2
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    et bien a mon avis tu essayes d'insérer une chaine <<DONNEES>> dans une colonne mais tu n'as pas entouré cette chaine par des simples cotes.
    'DONNEES'

    Mais bon il est difficile d'aider avec si peu d'indice.
    Si ce n'est pas ça, copie nous l'ordre SQL qui tu utilises pour faire tes insertions.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    DONNEES est le nom d'une de mes tables !
    Pour l'ordre SQL, est-ce que ça ne doit pas être gérer par JBUILDER avec un querysolver ?
    J'ai introduits des données dans la table en passant par IBmanager et là ça fonctionne !
    Par contre dès que j'essaye avec Jbuilder, BING, je me prend le message écrit plus haut !

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    J'ai tjs pas trouvé la solution, mais je cherche activement !
    Dans le même ordre d'idée, je n'arrive pas à ouvrir mes bases de données interbase, tirées des exemples de Jbuilder 8, avec interbase ou IBmanager !

  5. #5
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Interbase est bien installé ? (le client ET le serveur)

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Je pense que oui ! Y a-t-il un moyen de vérifier ?

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Est-ce qu'Interclient doit apparaître dans la fenêtre ajout/suppression de programmes ?

  8. #8
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Moi je ne l'ai pas (dans la liste).

    Sinon dit nous qu'est ce qui marche ?
    Car je ne comprend pas bien ou tu en es de tes tests. Tu dis que tu y arrives avec ibmannager puis dans le message d'apres que ça ne fonctionne pas...

    As tu essayé tout simplement un simple insert dans IBConsole ?

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Bon, j'ai repris mes tests à zéro ! J'ai laissé tomber IBmanager, et j'ai lancé IBConsole.

    1) Je crée une nouvelles base de données appelée TESTS2 (avec SQLDialect 3)

    2) Je crée une table
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE TABLE CLIENTS(
      NOM CHAR(30) NOT NULL,
      PRENOM CHAR(30) NOT NULL,
      AGE INTEGER,
      EMAIL CHAR(20) NOT NULL
      )
    Jusque là tout est ok ! Vous me direz, rien de bien sorcier !

    3) J'essaie le INSERT :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO CLIENTS(NOM,PRENOM,AGE,EMAIL)
       VALUES ('Dupont', 'MARCEL', 26, 'dup@free.be');
    Et mon insert fonctionne !

    Maintenant mon problème provient de l'utilisation de Jbuilder ! En effet, une fois que je connecte ma base, je ne sais pas y introduire de nouvelles données vià l'interface crée dans mon programme ! J'ai droit aux erreurs suivantes :
    Voir le code erreur com.borland.dx.dataset.DataSetException : BASE+37

    com.borland.dx.dataset.DataSetException: L'ensemble de données n'a pas d'identifieur de ligne unique.

    Note : pour les QueryDataSets vous devez désactiver metaDataUpdate.ROWID dans la propriété MetaDataUpdate, en plus de définir la propriété RowId sur une colonne.

    at com.borland.dx.dataset.DataSetException.a(Unknown Source)

    at com.borland.dx.dataset.DataSetException.z(Unknown Source)

    at com.borland.dx.dataset.StorageDataSet.db(Unknown Source)

    at com.borland.dx.dataset.StorageDataSet.a(Unknown Source)

    at com.borland.dx.dataset.DataSet.startEditCheck(Unknown Source)

    at com.borland.dx.dataset.DataSet.startEdit(Unknown Source)

    at com.borland.dbswing.TableMaskCellEditor.textModified(TableMaskCellEditor.java:336)

    at com.borland.dbswing.TableMaskCellEditor.insertUpdate(TableMaskCellEditor.java:315)

    at javax.swing.text.AbstractDocument.fireInsertUpdate(AbstractDocument.java:184)

    at javax.swing.text.AbstractDocument.handleInsertString(AbstractDocument.java:749)

    at javax.swing.text.AbstractDocument.insertString(AbstractDocument.java:706)

    at javax.swing.text.PlainDocument.insertString(PlainDocument.java:114)

    at com.borland.dbswing.DBPlainDocument.insertString(DBPlainDocument.java:77)

    at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:669)

    at javax.swing.text.JTextComponent.replaceSelection(JTextComponent.java:1052)

    at javax.swing.text.DefaultEditorKit$DefaultKeyTypedAction.actionPerformed(DefaultEditorKit.java:839)

    at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1512)

    at javax.swing.JComponent.processKeyBinding(JComponent.java:2435)

    at javax.swing.JTable.processKeyBinding(JTable.java:3290)

    at javax.swing.JComponent.processKeyBindings(JComponent.java:2481)

    at javax.swing.JComponent.processKeyEvent(JComponent.java:2398)

    at java.awt.Component.processEvent(Component.java:4902)

    at java.awt.Container.processEvent(Container.java:1566)

    at java.awt.Component.dispatchEventImpl(Component.java:3598)

    at java.awt.Container.dispatchEventImpl(Container.java:1623)

    at java.awt.Component.dispatchEvent(Component.java:3439)

    at java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1688)

    at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:593)

    at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:765)

    at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:698)

    at java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:559)

    at java.awt.Component.dispatchEventImpl(Component.java:3468)

    at java.awt.Container.dispatchEventImpl(Container.java:1623)

    at java.awt.Window.dispatchEventImpl(Window.java:1585)

    at java.awt.Component.dispatchEvent(Component.java:3439)

    at java.awt.EventQueue.dispatchEvent(EventQueue.java:450)

    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:197)

    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:144)

    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:136)

    at java.awt.EventDispatchThread.run(EventDispatchThread.java:99)

  10. #10
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    et un simple select fonctionne ?

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Si je fait le select via interbase, oui ça fonctionne !

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Bizare, bizare !
    Si je lance le pilote de base de donnée de Jbuilder 8 et que je clique sur l'onglet "Saisie SQL" de ma table CLIENTS et que je tape mon code d'INSERT, ça fonctionne ! Mais si j'essaye en cliquant sur l'onglet "Données" de ma table client et que je veux rentrer une donnée, bing il me tape l'erreur sus-sitée (Pour info, l'onglet "Données" se présente plus ou moins de la même manière que l'onglet "DATA" dans IBconsole !).

    Je ne comprend vraiment pas ! Mais apparement, le problème ne vient pas d'interbase, mais plutot de Jbuilder !

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 30
    Points : 19
    Points
    19
    Par défaut
    Bon j'ai trouvé pourquoi Jbuilder m'affichait ce message :

    Voir le code erreur com.borland.dx.dataset.DataSetException : BASE+37

    com.borland.dx.dataset.DataSetException: L'ensemble de données n'a pas d'identifieur de ligne unique.

    Note : pour les QueryDataSets vous devez désactiver metaDataUpdate.ROWID dans la propriété MetaDataUpdate, en plus de définir la propriété RowId sur une colonne.
    C'est simplement parce que je n'avais pas définis de clef primaire dans ma table ! Donc ce @&#{[#@& de programme ralait car je n'avais pas définis ma clef, tout simplement !

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

Discussions similaires

  1. Problème d'insertion de données Perl-dbi
    Par Tygrou dans le forum SGBD
    Réponses: 5
    Dernier message: 07/04/2006, 11h20
  2. [MySQL] Problème d'insertion de données dans table d'associations
    Par Yukhaa dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 07/02/2006, 17h10
  3. problème d'insertion de données
    Par devalender dans le forum Débuter
    Réponses: 11
    Dernier message: 05/07/2004, 16h45
  4. Réponses: 2
    Dernier message: 14/05/2004, 14h32
  5. problème d'insertion de données
    Par Falgan dans le forum ASP
    Réponses: 2
    Dernier message: 06/04/2004, 09h29

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