Update van database lukt niet

Status
Niet open voor verdere reacties.

happyface133

Gebruiker
Lid geworden
3 apr 2008
Berichten
7
Ik heb in C# code geschreven om mijn database up te daten. Ik krijg geen foutmeldingen maar toch verandert er niets in mijn database.


Code:
string str_Conn = Convert.ToString(ConfigurationManager.ConnectionStrings["con_KidsEnZo"]);
        OleDbConnection con_KidsEnZo = new OleDbConnection(str_Conn);
        string str_SQL = "UPDATE tblArtikel SET Titel = @Titel, Artikel = @Artikel, Categorie = @Categorie WHERE ID = " + Session["ArtikelId"];

        OleDbCommand cmdUpdate = new OleDbCommand(str_SQL, con_KidsEnZo);

        cmdUpdate.Parameters.AddWithValue("@Titel", txt_Titel.Text);
        cmdUpdate.Parameters.AddWithValue("@Artikel", txt_Artikel.Text);
        cmdUpdate.Parameters.AddWithValue("@Categorie", ddl_Categorie.SelectedValue);

        try
        {
            con_KidsEnZo.Open();
            cmdUpdate.ExecuteNonQuery();
        }

        finally
        {
            con_KidsEnZo.Close();
        }

Volgens mij zitten er geen fouten in de code...
 
Twee opmerkingen:
Ten eerste:
Code:
string str_SQL = "UPDATE tblArtikel SET Titel = @Titel, Artikel = @Artikel, Categorie = @Categorie WHERE ID = " + Session["ArtikelId"];
Je gebruikt zo mooi die parameters.. Waarom dan niet voor de ID? Dus:
Code:
string str_SQL = "UPDATE tblArtikel SET Titel = @Titel, Artikel = @Artikel, Categorie = @Categorie WHERE ID = @ID"

Ten tweede:
Code:
cmdUpdate.ExecuteNonQuery();
geeft als return value het aantal affected records. Als je deze return value nu even opslaat kun je zien of de query uberhaupt iets heeft gedaan. Kans dan je Session["ArtikelId"] een verkeerde waarde bevat waardoor de query 0 records terug geeft...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan