Sql = "UPDATE t_novell SET Read = Read + 1 WHERE ID =" & Ident & " "
set re = Connect.Execute(Sql)
Set re = Nothing
Connect.Close
okej har lite frågor om sql.
1. Behöver man sätta re = Nothing när man har gjort klart kopplingen? går det snabbare eller något. behöver man ens ha det om man ska ha en nya sql fråga efteråt? men Gör juh ändå en ny set.
2. Samma med denna behöver man stänga Connect. eller rättare sagt. hjälper det något om man stänger eller är det bara mer riktig kod?
3. Ser någon något fel i den koden över? för den funkar nämligen inte. själv sql raden.
Feltyp:
Microsoft JET Database Engine (0x80040E14)
Syntaxfel i UPDATE-uttryck
Som gennerellt svar på fråga 1 och 2 kan man väll säga att man alltid ska stänga objekt man öppnar när man är klar med dom. Annars kommer det ju ligga kvar på servern helt i onödan och ta onödig kraft tills de stängs av sig själva p.g.a inaktivitet.
Varför skulle du inte stänga objekten? Om du tänker så och lite logiskt tänkande så förstår man att om man har flera objekt öppna tar det mer krafta av servern. Om dessa sen är öppna helt i onödan för att de inet används så är det alltså onödig kraft från servern som kunde annvändas till bättre saker.
Du behöver aldig sätta (re=....) när du kör en update. Kör enligt nedan så länge du inte vill ha något returnerat.
Hur det är exakt med "Connect.close" vet jag ej men borde inte skada att stänga det efter sig.
Ang. felmeddelandet: innehåller verkligen "Ident" ett numeriskt värde? Eller kan det vara så att "Read" är ett reserverat ord i SQL?
Sql = "UPDATE t_novell SET Read = Read + 1 WHERE ID =" & Ident
Connect.Execute sql,,128
Connect.Close
Sql = "UPDATE t_novell SET Co = Co + 1 WHERE ID = " & Ident
Connect.Execute Sql,,128
Connect.Close
Set Connect = Nothing
Fel: Microsoft JET Database Engine (0x80004005)
Operationen måste använda en fråga som kan uppdateras.
Den funkar inte heller... måste jag inte Göra en set före connect ? och vad betyder 128?
Kör du lokalt? Kolla då upp rättighetsinställningarna på databasmappen.
måste jag inte Göra en set före connect ?
Nej, du ska inte skapa något recordset när du kör UPDATE. och vad betyder 128?adExecuteNoRecords, dvs du talar om att du inte vill att något recordset ska skapas överhuvudtaget.