Speciel opdatering af DB (Måske datareader vs. datareader )
Hej eksperterTil et lille CMS-system er jeg ved at lave en ”slet menupunkt funktion”. Efter man har slettet et menupunkt opdateres rækkefølgen som de vises (Se kode eksempel). Mit spørgsmål er om dette kan gøres på en smartere måde – for på den måde som jeg her bruger åbner man jo en connection til databasen flere gange!. Burde man i stedet bruge dataset hvad ville i gøre?.
Mvh Jensen2005
Kode eksempel:
//om nummerere de andre punkter
string dbStringomnummer;
OleDbConnection omnummerCon;
OleDbDataReader myDataReader;
dbStringomnummer = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("../db/hjemmesideinfo.mdb");
omnummerCon = new OleDbConnection(dbStringomnummer);
omnummerCon.Open();
OleDbCommand omnummerCmd = new OleDbCommand("SELECT Key FROM hovedmenu ORDER BY rekkefolge",omnummerCon);
myDataReader = omnummerCmd.ExecuteReader();
int i = 0;
while ( myDataReader.Read() )
{
string dbStringomnummerer;
OleDbConnection omnummererCon;
dbStringomnummerer = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("../db/hjemmesideinfo.mdb");
omnummererCon = new OleDbConnection(dbStringomnummerer);
omnummererCon.Open();
OleDbCommand omnummererCmd = new OleDbCommand("UPDATE hovedmenu SET rekkefolge="+i+" WHERE Key= "+myDataReader[ "key" ].ToString()+"",omnummererCon);
omnummererCmd.ExecuteNonQuery();
omnummererCon.Close();
i++;
}
myDataReader.Close();
omnummerCon.Close();
