Avatar billede tdafoobar Nybegynder
22. maj 2006 - 06:15 Der er 4 kommentarer og
1 løsning

Problemer med parameterized queries og ms access

Hejsa

Jeg undre mig lidt over hvorfor denne her stump kode giver fejl.
Nogle ideer ?

--- fejl ---

System.Data.OleDb.OleDbException: Handlingen skal bruge en opdaterbar forespørgsel.
  at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(Int32 hr)
  at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
  at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
  at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
  at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
  at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
  at ASP.index_aspx.Insert(Object sender, EventArgs e)

--- kode ---
void Insert(object sender, EventArgs e)
  {
    if(Page.IsValid)
    {
      try
      {
        System.Data.OleDb.OleDbConnection link = new System.Data.OleDb.OleDbConnection();
        link.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" +
                                @"Data source=C:\IIS\guestbook.mdb";

        string SQL = @" INSERT INTO                                "+
                    @"            guestbook(strName              "+
                    @"                      ,strEmail              "+
                    @"                      ,txtMessage)          "+
                    @" VALUES (@name                              "+
                    @"        ,@email                              "+
                    @"        ,@message)                          ";

        OleDbCommand cmd = new OleDbCommand(SQL,link);
        cmd.Parameters.Add(new OleDbParameter("@name",name.Text));
        cmd.Parameters.Add(new OleDbParameter("@email",email.Text));
        cmd.Parameters.Add(new OleDbParameter("@message",message.Value));
        cmd.Connection.Open();
        cmd.ExecuteNonQuery();

      }
      catch(Exception ex)
      {
        error.Text = ex.ToString();
      }
    }
  }
Avatar billede nielle Nybegynder
22. maj 2006 - 06:40 #1
Det lyder som om at dit program ikke har skriverettigheder til MBD-filen.
Avatar billede tdafoobar Nybegynder
22. maj 2006 - 06:58 #2
lyder lidt underligt da jeg kører IIS som root.
Avatar billede tdafoobar Nybegynder
22. maj 2006 - 07:26 #3
hmm, underligt. Selvom den havde administrator rettigheder, brugte den brugergruppen "brugere" som ikke havde rettigeringsrettigheder til filen.

Men det var nøglen til løsning :-) Do the funky dance for points.
Avatar billede tdafoobar Nybegynder
22. maj 2006 - 07:28 #4
(og så fik jeg da skrevet en guide mens jeg ventede, så dagen var ikke hel spildt.)
Avatar billede nielle Nybegynder
22. maj 2006 - 08:33 #5
Svar :^)
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