begin process at 2012 02 10 10:04:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Base de données

 > 

[C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

mercredi 12 avril 2006 à 00:02:18 | [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Julien_Gates

Bonsoir je ne comprend pas mon erreur venant d'une requete d'insertion dans une base de donnée en C# : voici mon code : System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(); conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source= c:\hot.mdb"; try { conn.Open(); } catch { MessageBox.Show("Notre connection n'est pas établit"); } finally { int res; System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand("INSERT INTO dej(numdej,date,numclient,Numchambre,nombch,nombfr,nomp) VALUES('"+Convert.ToString(nb+1)+"','"+cb2.Text+"','"+cb1.Text+"','"+cb3.Text+"','"+cb4.Text+"','"+cb5.Text+"','"+cb6.Text+"');", conn); res=command.ExecuteNonQuery (); } l'erreur est la suivante : Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll j'ai essayer de mettre de & a la place des + mais visual studio.net n'en a pas voulu je ne comprend d'ou vien cette erreur la requette me semble bonne j'ai reesayé plusieur foi sans résultat je bloque En attendant votre réponse bonne soirée en vous remerciant d'avance
mercredi 12 avril 2006 à 00:58:01 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

hlayachi

Membre Club
Bonsoir
d'abord j'aimerai te dire que la façon avec laquelle est écrit ton code est trop brouillée
ensuite y a un tout petit pb dans la requête, voilà ce que tu dois faire:

            finally
            {
                int res;
string req = " insert into dej (numdej,date)" + " values (' " +Convert.ToString(nb+1)+ " ' , '"+cb2.Text+"')" ;
                System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand(req, conn);
                res=command.ExecuteNonQuery ();
              

            }

Ici j'ai pris seulement deux colonnes, tu fais la même chose pour le reste

mercredi 12 avril 2006 à 07:16:34 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Lutinore

Administrateur CodeS-SourceS
Salut, déja tu ne dois pas executer ta requête dans la close finally mais dans la close try. Petit rappel : la close finally est appelée après un bloc try mais aussi après un bloc catch.



try
{
    // Ouvre la connexion..
    // Requête..
}
catch ( Exception ex )
{
    MessageBox.Show( ex.ToString( ) );
}
finally
{
    // Ferme la connexion.
    // Ou une close using dans le try.
}
mercredi 12 avril 2006 à 12:23:22 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Julien_Gates

Merci pour vos réponse mais j'ai malheureusement toujours le même problème je ne sais pas d'ou cela peut venir car j'ai utiliser exactement le même protocole dans une autre base de donnée et je n'est eu aucun problème

Tout mes champs dans ma base de donnée sont en texte.

 Au début j'avais mit le premier champs en numéro auto et j'avais mit un blanc dans mon INSERT INTO mais j'ai toujours la même erreur donc je ne comprend pas .


private void button1_Click(object sender, System.EventArgs e)
        {
           
           
            System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();

            conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source= c:\hot.mdb";

            try
            {
                conn.Open();
                int r;
                string req = " insert into dej (numdej,date)" + " values (' "+cb1.Text+"'+'"+cb2.Text+"')" ;
                System.Data.OleDb.OleDbCommand command = new System.Data.OleDb.OleDbCommand(req, conn);
                r=command.ExecuteNonQuery ();
                //opération d'ajout terminer
               
               
            }
            catch
            {
                MessageBox.Show("Notre connection n'est pas établit");
            }
            finally
            {
                conn.Close();
            }
           
        }

Merci encore




mercredi 12 avril 2006 à 17:05:14 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

hlayachi

Membre Club
Merci Lutinore d'avoir corriger mon oubli
 Julien_Gates c'est vrai que la méthode ExecuteNonQuery () retourne un int, mais tu essayes de supprimer int r ; et d'appeler ExecuteNonQuery () comme si elle ne retourne rien.
mercredi 12 avril 2006 à 17:29:37 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Julien_Gates

Merci mais même comme cela j'ai toujours la même erreur

bonne soirée
mercredi 12 avril 2006 à 17:59:42 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

hlayachi

Membre Club
en principe ça doit marcher
essaye de faire ceci: c'est la même chose mais des fois les erreurs logiques nous obligent de changer

tu ajoutes un using comme suit : using System.Data.Oledb;
ensuite fais cela dans un click

OleDbConnection conn = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=c:\hot.mdb");

conn.Open();

// je prends un champ text
string
text1="aaa";


string
req = " insert into dej (nomp)" + " values ('"+text1+"')" ;

OleDbCommand cmd = new OleDbCommand(req,conn);

cmd.ExecuteNonQuery();

conn.Close();

mardi 18 avril 2006 à 23:51:52 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Julien_Gates

Bonsoir,

merci pour vos réponses j'étais en déplacement je n'est pas pu répondre tout de suite je suis arrivé a faire marché ma requête d'insertion mais que une foi .
Seulement après il ma refait la même erreur alors que je n'avais pas changé le code .

Je ne comprend vraiment pas pourquoi il ne veut pas marché .

Voici mon nouveau code avec mes nouvel amélioration qui a marché une foi:

System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection();

            conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source= c:\hot.mdb";

            try
            {
                conn.Open();

                int r;
                

                string req="INSERT INTO dejeuner(datedej, ncli, nchamb, nombch, nombfr, nomp )VALUES('"+date.Text+"', '"+Ncli.Text+"', '"+nchmb.Text+"', '"+bch.Text+"', '"+bfr.Text+", '"+pat.Text+"');";
                System.Data.OleDb.OleDbCommand inser = new System.Data.OleDb.OleDbCommand(req,conn);
                r=inser.ExecuteNonQuery();
                //opération d'ajout terminer
            }
            catch
            {
                MessageBox.Show("erreur002");
            }
            finally
            {
                conn.Close();
                

            }

Je ne comprends pas pourquoi il me fait toujours la même erreur.

Je n'est pas encore essayé la solution du dessus  je testerai et vous tiendrai  au courant.

Merci bonne soirée
 


mercredi 19 avril 2006 à 00:06:09 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

Julien_Gates

Re

je vien de testé les conseils de hlayachi  visiblement l'insertion ne marche toujours pas .

j'ai testé la requete sous access elle semble correct. Je ne voit vraiment pas d'ou peut provenir l'erreur.

Peut etre faut il compté le nombre de ligne pour inserer au bon momment les nouvels informations ?

Merci bonne soirée.

mercredi 19 avril 2006 à 00:57:10 | Re : [C#] erreur dans un programme permettant d'inserer des données dans une base de donnée (Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll)

hlayachi

Membre Club

chez moi ça marche. ouvre un nouveau projet  et essaye de faire ce que j'ai suggéré.

à mon avi le problème existe dans les types des enregistrements, c'est pourquoi moi j en ai pris seulement deux, càd pour essayer et puis généraliser

c'est quoi ça:
<!--[if !vml]--> <!--[endif]-->.
<!--[if !vml]--><!--[endif]-->


1 2

Cette discussion est classée dans : text, erreur, system, data, oledb


Répondre à ce message

Sujets en rapport avec ce message

System.Data.OleDb.OleDbException: Erreur non spécifiée [ par ccda ] Bonjour,Je rencontre un problème de connexion à ma base de données Access lors de certaines requêtes. La programmation est en C#.L'erreur signalée est Gestion d'exception [ par erosplus ] Bonjour,lorsque je lance mon apllication crée avec Visual Studio C#.Net il y'a un avertissement qui dit:une exception non géré du type'System.Data.Ole modifier une table [ par fayrous ] Salut; voici le code private void button6_Click(object sender, EventArgs e) { if (richTextBox_exercice_m.Text != "" && richT base donnée acess [ par fayrous ] Salut; dans la requete update il y a une erreur de syntax. pouvez vous m'aider. System.Data.OleDb.OleDbConnection c = new System.Data.OleDb.OleDbConn Erreur programme [ par inoussyago ] cool forum , Bonjour, à tous. salut je veux tester une classe que j'ai creer pour cela j'ai ecri ça dans mon main AccesData obj; obj = AccesData.G probléme d'authentification en c# [ par theangelofwaxiscomming ] bonjour , je suis débutant en c# , mon problème est que j'ai un form d'authentification (Form3 ) qui permet de s'authentifier avant d'accéder a l'appl Erreur avec System.Data.SqlServerCe [ par poorsi21 ] SLt je travaille avec c# et SQL server compact 3.5 Tous ce passe avec "System.Data.SqlServerCe". Mais une autre fois je ouvre mon application et "Syst Insérer dans une table à partir d'un formulaire [ par indice ] Salut à Tous, Je suis développeur et débutante en C# et j'utilise la console Windows donc un formulaire. j'ai écrit un code pour recueillir des infos Base de Donnees / C# [ par jackasse ] Bonjour ts le monde , je suis débutante en prog C# et j ai pas mal de souci ofet , j ai cree une petite interface composée de 2 bouton ( connexion a Connection à access en C# [ par dimcel ] Bonjour, j'essye de me connecter en c# à ma base de données access mais j'ai une erreur avec la ligneOleDbDataReader myReader = myCommand.ExecuteReade


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,983 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales