[ASP/mySQL] Query-based update failed

Pagina: 1
Acties:

  • Hydrax
  • Registratie: December 2001
  • Laatst online: 17-07 16:31
Ok ik heb de volgende situatie:
PWS op win98 met mySQL server.

Ik heb een formulier waarin gegevens uit een database worden opgevraagd, als ik die wil editten gaat dit naar een bijwerp.asp, de code daarin is:
Om te verbinden met de database:
ASP.NET Visual Basic:
1
2
3
4
5
6
7
8
9
    Dim Conn
    Dim objRS
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "SQLklacht"
    Set objRS = Server.CreateObject("ADODB.Recordset")

    Klacht = Request.QueryString("UID")
    sql = "Select * FROM Klachten WHERE UID =" & Klacht
    objRS.Open sql,Conn,3,3


En vervolgens om de data toe te voegen(aantal columns wat ingekort):
ASP.NET Visual Basic:
1
2
3
4
    objRS("TelefoonNR") = Request.Form("TelefoonNR")
    objRS("ReferentieNR") = Request.Form("ReferentieNR")
    objRS.Update
    objRS.Close


Op de manier krijg ik het wel voor elkaar om nieuwe records toe te voegen (zonder die where statement dan), maar niet om te editten.

De foutmelding die ik krijg is:
Microsoft OLE DB Provider for ODBC Drivers error '80004005'

Query-based update failed because the row to update could not be found.

/SQLklacht/bijwerk.asp, line 178

line 178 is de regel waarin staat objRS.Update
Het vreemde is dat als ik controleer of de SQL statement werkt door in het document iets op te vragen (bv: response.write Klacht of response.write objRS("UID") ) dan werkt dat wel.

Heeft iemand enig idee wat het probleem kan zijn?
Ik heb al gezocht hier op GoT, google, ExpertsExchange en Microsoft, maar ik krijg het maar niet voor elkaar om een oplossing te vinden.

Every program has two purposes -- one for which it was written and another for which it wasn't. specs


  • whoami
  • Registratie: December 2000
  • Laatst online: 21-08 22:54
Returned die query wel een row?

Waarom gebruik je geen UPDATE statements om gegevens te wijzigen, en INSERT statements om gegevens toe te voegen?

https://fgheysels.github.io/


  • Hydrax
  • Registratie: December 2001
  • Laatst online: 17-07 16:31
whoami schreef op 30 juli 2003 @ 11:26:
Returned die query wel een row?

Waarom gebruik je geen UPDATE statements om gegevens te wijzigen, en INSERT statements om gegevens toe te voegen?
Die query werkt wel, want als ik een gegeven uit dat record opvraag dan wordt die netjes weergegeven.
De keuze voor deze methode is simpelweg omdat dit de eerste was die ik zag, zo worden de gegevens ook toegevoegd en toen ik nog een Access database gebruikte werkte dit prima.

Every program has two purposes -- one for which it was written and another for which it wasn't. specs


  • Hydrax
  • Registratie: December 2001
  • Laatst online: 17-07 16:31
ok het probleem zelf is niet opgelost, maar ik doe de update nu maar op een andere manier.
ASP.NET Visual Basic:
1
2
3
4
5
6
7
    sql= _
    "update klachten set " &_
    "KlantNaam='" & Request.Form("KlantNaam") & "'," &_
    "ContactPersoon='" & Request.Form("ContactPersoon") & "'" &_
    "where " &_
    "UID =" & Request.QueryString("UID")
    Conn.Execute sql

Dit werkt zowaar, met dank aan deze post (punt 4).
Helaas zijn dit nog maar 2 colums, nog zo'n 110 te gaan :(

Every program has two purposes -- one for which it was written and another for which it wasn't. specs


  • whoami
  • Registratie: December 2000
  • Laatst online: 21-08 22:54
Heb jij 110 columns in 1 tabel zitten??
Zoja, dan denk ik dat je toch eens je datamodel grondig moet evalueren...

https://fgheysels.github.io/


  • Hydrax
  • Registratie: December 2001
  • Laatst online: 17-07 16:31
whoami schreef op 30 juli 2003 @ 12:51:
Heb jij 110 columns in 1 tabel zitten??
Zoja, dan denk ik dat je toch eens je datamodel grondig moet evalueren...
Ja dat was idd ff wat minder, maar 1 probleem tegelijk :)
Toen ik de oorspronkelijke database maakte was die veel kleiner, en er moest steeds een stukje bij. Maar hier vind ik nog wel wat op.

Every program has two purposes -- one for which it was written and another for which it wasn't. specs

Pagina: 1