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

Windows Forms Discussion :

insèrer une ligne


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 18
    Points : 19
    Points
    19
    Par défaut insèrer une ligne
    Bonjour à toutes et à tous,

    J'ai un petit souci avec un programme c#.net ---> ORACLE
    En effet lorsque j'exécute il s'arrête à la ligne et il me dit l'erreur suivante:
    ORA-00917 : VIRGULE ABSENTE
    Moi sincèrement j'ai cherché partout pour ajouter une virgule mais je ne trouve pas.

    Merci d'avance pour l'aide
    Voici mon code source

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    private void button4_Click(object sender, EventArgs e)
    {
    try
    {
    
    string oradb = "Data Source=XE;User Id=SYSTEM;Password=bizerte;";
    OracleConnection conn = new OracleConnection(oradb); // C#
    conn.Open();
    
    OracleCommand Cmd = new OracleCommand();
    OracleCommand cmd = conn.CreateCommand();
    OracleCommand Cmd1 = new OracleCommand();
    OracleCommand cmd1 = conn.CreateCommand();
    OracleCommand Cmd2 = new OracleCommand();
    OracleCommand cmd2 = conn.CreateCommand();
    
    
    cmd.Connection = conn;
    String q = "select max(IDBULLETIN)+1 from hr.bulletin";
    cmd.CommandText = q;
    cmd.CommandType = CommandType.Text;
    cmd.ExecuteReader();
    OracleDataReader dr = cmd.ExecuteReader();
    dr.Read();
    l = dr.GetValue(0).ToString();
    
    cmd1.Connection = conn;
    String q1 = "SELECT TO_CHAR(sysdate, 'DD/MM/YYYY') FROM dual";
    cmd1.CommandText = q1;
    cmd1.CommandType = CommandType.Text;
    cmd1.ExecuteReader();
    OracleDataReader dr1 = cmd1.ExecuteReader();
    dr1.Read();
    d = dr.GetValue(0).ToString();
    
    cmd2.Connection = conn;
    
    String query = "insert into hr.BULLETIN(IDBULLETIN,FAIT_LE,MATRICULE,OBJET,DEPART,RETOUR,NBJOURS,OBSERVATION) VALUES('" + l + "',''" + d + "'','" + textBox9.Text + "','" + comboBox1.Text + "',''" + Date1.Text + "'',''" + Date2.Text + "'','" + textBox3.Text + "','null')";
    cmd2.CommandText = query;
    cmd2.CommandType = CommandType.Text;
    cmd2.ExecuteReader();
    conn.Close();
    }
    catch (OracleException ex)
    {
    
    MessageBox.Show("L'erreur suivante a été rencontrée :" + ex.Message);
    
    }
    
    
    
    }

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    à cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String q = "select max(IDBULLETIN)+1 from hr.bulletin";
    réécris-là comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String q = "select max(IDBULLETIN)+1 from [hr.bulletin]";
    j'ai déjà eu une erreur à cause d'une requête et la cause était le point dans le nom de la table.

    J'espère t'avoir aidé.

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 18
    Points : 19
    Points
    19
    Par défaut
    merci pour votre aide mais ca ne résoudre pas le problème

  4. #4
    Membre à l'essai
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Points : 13
    Points
    13
    Par défaut
    le probleme vient tres certainement de cette ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String query = "insert into hr.BULLETIN(IDBULLETIN,FAIT_LE,MATRICULE,OBJET,DEPART,RETOUR,NBJOURS,OBSERVATION) VALUES('" + l + "',''" + d + "'','" + textBox9.Text + "','" + comboBox1.Text + "',''" + Date1.Text + "'',''" + Date2.Text + "'','" + textBox3.Text + "','null')";
    si au debug tu affiches query, tu verras le problème très rapidement, probablement aux alentours de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    "',''" + d + "'','"
    "',''" + Date1.Text + "'',''"
    "'',''" + Date2.Text + "'','"
    ...
    Attention aux double quotes.

  5. #5
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Pour éviter ce type de problème, utiliser les requêtes paramétrées.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 18
    Points : 19
    Points
    19
    Par défaut
    merciiiiiiiiiiiiiiiiiiii j'ai trouvé la solution
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String query = "insert into hr.BULLETIN(IDBULLETIN,FAIT_LE,MATRICULE,OBJET,DEPART,RETOUR,NBJOURS,OBSERVATION) VALUES('" + l + "','" + d + "','" + textBox9.Text + "','" + comboBox1.Text + "','" + Date1.Text + "','" + Date2.Text + "','" + textBox3.Text + "','null')";

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

Discussions similaires

  1. insérer une ligne dans un dbgrid entre 2 enregistrements
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 3
    Dernier message: 22/09/2005, 09h15
  2. [VBA] insérer une ligne dans un fichier excel
    Par cokinoumasterflash dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/07/2005, 18h52
  3. Réponses: 2
    Dernier message: 07/07/2005, 11h47
  4. Insérer une ligne automatiquement dans une autre tab
    Par davyd dans le forum Langage SQL
    Réponses: 10
    Dernier message: 29/03/2005, 17h08
  5. [VBA][Excel]Insérer une ligne
    Par loverdose dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/02/2005, 16h27

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