Bonjour à tous,
j'ai besoin de faire un requête insert dans une base de données SQLCE.
Malheureusement je n'y arrive pas, j'ai beau lire des pages entières mais quelque chose m'échappe.
Comme indiqué dans un post je convertis mes " ' " en " '' " mais ça ne fonctionne toujours pas.
Je ne vois vraiment pas ou est le problème.
J'ai pris soin de renommer mes variables en leur type dans la base de données pour que ce soit plus clair pour vous.
A savoir j'ai aussi un id en autoIncrement et mes ntext peuvent contenir des guillemets.
Voici mon code :
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
 //Remplacement des quotes
            text1 = text1.Replace("'", "''");
            text2 = text2.Replace("'", "''");
            text3 = text3.Replace("'", "''");
            text4 = text4.Replace("'", "''");
            text5 = text5.Replace("'", "''");
 
            string conString = Properties.Settings.Default.MaBaDeDonnéesConnectionString;
 
            using (SqlCeConnection con = new SqlCeConnection(conString)) {
                con.Open();
 
                using (SqlCeCommand com = new SqlCeCommand("INSERT INTO MaTable(ntext1, ntext2, ntext3, ntext4, ntext5, int, bit) VALUES(@ntext1, @ntext2, @ntext3, @ntext4, @ntext5, @int, @bit);", con)) {
                    com.Parameters.AddWithValue("@ntext1", ntext1); //string dans mon programme
                    com.Parameters.AddWithValue("@ntext2", ntext2); //string dans mon programme
                    com.Parameters.AddWithValue("@ntext3", ntext3); //string dans mon programme
                    com.Parameters.AddWithValue("@ntext3", ntext4); //string dans mon programme
                    com.Parameters.AddWithValue("@ntext4", ntext5); //string dans mon programme
                    com.Parameters.AddWithValue("@int", int);       //int dans mon programme
                    com.Parameters.AddWithValue("@bit", bit);       //bool dans mon programme
 
                    com.ExecuteNonQuery();
                }
            }