Avatar billede jimmydk Nybegynder
16. februar 2008 - 13:44 Der er 4 kommentarer og
1 løsning

C# flere connections

Hej

Har set mig blind på et lille problem jeg her, håber der er en her som kan løse det.?

Jeg er ved at lave en slet som både sletter i databasen men også den fysiske fil, men den stopper ved "while" i nummer 2 og jeg kan ikke lige se problemet.
De virker begge 2 hvis den ene er slået fra.!!

protected void Button1_Click(object sender, EventArgs e)
    {

        string strSQL = "Delete * from Filer WHERE Id=" + Convert.ToInt32(Request.Form["Slet"]);;
        OleDbConnection MyConnection = new OleDbConnection();
        MyConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Databasen.mdb";
        MyConnection.Open();
        OleDbCommand MyCommand = new OleDbCommand(strSQL, MyConnection);
        MyCommand.ExecuteNonQuery();
        MyConnection.Close();
        Slet();

               
    }
    private void Slet()
    {
            OleDbConnection MyConnection1 = new OleDbConnection();
            MyConnection1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|Databasen.mdb";
            string strSQL1 = "Select * from Filer where Id =" + Convert.ToInt32(Request.Form["Slet"]);
           
            OleDbCommand objCommand1 = new OleDbCommand(strSQL1, MyConnection1);
            OleDbDataReader objDataReader1 = null;

            try
            {
                MyConnection1.Open();
                objDataReader1 = objCommand1.ExecuteReader();
                while (objDataReader1.Read() == true)
                {
                    string Filnavn = Convert.ToString(objDataReader1["Filnavn"]);
                    File.Delete(Server.MapPath(".\\") + "../Filer/" + Filnavn);
                    Fejl.Text = "Filen er blevet slettet";
                }
                MyConnection1.Close();
                objDataReader1.Close();
            }

            catch (Exception exept)
            {
                Fejl.Text = Convert.ToString(exept);

            }
            GridView1.DataBind();
    }
Avatar billede erikjacobsen Ekspert
16. februar 2008 - 14:03 #1
Er det bare mig, eller .... Du starter med at slette i din tabel hvor id er Request.Form["Slet"] - derefter laver du en select hvor id er Request.Form["Slet"]

Og så hedder det ikke
  delete * from ...
men bare
  delete from ...
Ingen "*" (enkelte databasesystemer accepterer dog "*"-en.)
Avatar billede jimmydk Nybegynder
16. februar 2008 - 14:42 #2
Dog er vist det rigtige udtryk her.

Har vendt det om og det virker takker, smid et svar og jeg sende lidt points din vej.

Og går videre med det næste problem :D
Avatar billede jimmydk Nybegynder
16. februar 2008 - 14:43 #3
Doh even
Avatar billede erikjacobsen Ekspert
16. februar 2008 - 15:49 #4
Jeg samler slet ikke på point, tak. Svar selv, accepter dit eget svar.
Avatar billede jimmydk Nybegynder
16. februar 2008 - 18:39 #5
Jamen så takker jeg for hjælpen ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester