Hvis kundeidet ikke findes, skal variablen pris så skrives i feltet total for den kunde som netop er blevet oprettet?
dim pris, kundid
kundeid = 24
pris = 300
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open dbstring
connection.execute "UPDATE kundetotal SET total=total+"&pris&" WHERE kundeid ="&kundeid,recAff
if recAff = 0 then
connection.execute "Insert into kundetotal (kundeid,total) values ("&kundeid&","&pris&")"
end if
connection.close
set connection = nothing
håber at det er det du skal bruge
jeg har bare sat kundeid og pris til et eller andet.
Nu driller serveren, jeg vender tilbage i morgen
Nu ser min kode sådan ud:
********************
dim pris, kundeid
pris = 300
kundeid = 24
Set Connection = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & sti & ""
Connection.Open DSN
connection.execute "UPDATE kundetotal SET 'total'='total'+'"&pris&"' WHERE 'kundeid' ='"&kundeid ', recAff"
if recAff = 0 then
connection.execute "Insert into kundetotal (kundeid,total) values ("&kundeid&","&pris&")"
end if
connection.close
set connection = nothing
*****************************
og jeg får følgende fejlmeddelse:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in string in query expression ''kundeid' ='24'.
linje 30, som er:
connection.execute "UPDATE kundetotal SET 'total'='total'+'"&pris&"' WHERE 'kundeid' ='"&kundeid ', recAff"
testet og virker:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
dim pris, kundeid
pris = 500
kundeid = 25
Set Connection = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
'DSN = DSN & "DBQ=" & Server.mappath("/exp/files/DB.mdb") & ""
DSN = DSN & "DBQ=" & sti & ""
Connection.Open DSN
Connection.execute "UPDATE kundetotal SET total=total+"&pris&" WHERE kundeid="&kundeid, recAff
if recAff = 0 then
Connection.execute "Insert into kundetotal (kundeid,total) values ("&kundeid&","&pris&")"
end if
Connection.close
set Connection = nothing
%>
Du skal være opmærksom på, hvilke databasetyper kundeid og total er. Jeg vil nok foreslå at total er et tal. kundeid er op til dig. Husk kun at bruge ' ved teksttyper. Og aldrig nogen siden ' omkring feltnavne eks WHERE 'kundeid' ='"&..... ikke ' omkring kundeid, i det tilfælde hvor det angiver navnet på feltet i databasen.
Undskyld den lange ventetid men der skete noget uforudset.
Til mm12010 får jeg denne fejlmeddelse:
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
linjen er: Connection.execute "UPDATE kundetotal SET total=total+"&pris&" WHERE kundeid="&kundeid, recAff
Til tofte total er tal kundeid er text
Connection.execute "UPDATE kundetotal SET total=total+"&pris&" WHERE kundeid='"&kundeid&"'", recAff
Nu har jeg fået det til at virke, kan i alle 3 ikke give et svar.
Mange tak
svar
(men jeg synes at mit bidrag har været beskedent sammenlignet med de to andre)
Mange tak for hjælpe til jer alle