Avatar billede chakazulu Nybegynder
05. januar 2010 - 19:13 Der er 8 kommentarer og
1 løsning

DB total value? - ASP

Jeg prøver at "calculate" værdi af nogle tal der er i DB

f.eks:
DataBase, ID_nr 9878 akat1stk + bkat1stk +
ckat1stk + dkat1stk = ?

<% Response.Write rs("total")%>

I det script forneden tror jeg bare jeg mangler en eller anden måde at kalde DB id'et på!

Min DB er ACCESS 2002, ASP.  Måske kan det løses med SUM?


HELP


<%

Dim adoCon   
Dim rsg       
Dim strSQL           


Set adoCon = Server.CreateObject("ADODB.Connection")


adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("cykeldata.mdb")

Set rsg = Server.CreateObject("ADODB.Recordset")


strSQL = "SELECT ID_no, (akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata;"

 
rsg.Open strSQL, adoCon
%>

<input type="text" name="total" value="<% Response.Write rsg("total")%>" size="10">
Avatar billede Slettet bruger
05. januar 2010 - 19:48 #1
Måske:

SELECT (akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata WHERE ID_no = '9878'
Avatar billede chakazulu Nybegynder
05. januar 2010 - 19:59 #2
hMM..  ik dårligt, men ID nr er ikke fast.

Kan man kalde det i URL?

Eks. http://localhost/testside.asp?ID=8655

strSQL = "SELECT ID_no, (akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata WHERE ID_no = URL;"

<%

Dim adoCon   
Dim rsg       
Dim strSQL           


Set adoCon = Server.CreateObject("ADODB.Connection")


adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("cykeldata.mdb")

Set rsg = Server.CreateObject("ADODB.Recordset")


strSQL = "SELECT ID_no, (akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata WHERE ID_no = URL;"

 
rsg.Open strSQL, adoCon
%>

<input type="text" name="total" value="<% Response.Write rsg("total")%>" size="10">
Avatar billede Slettet bruger
05. januar 2010 - 20:03 #3
strSQL = "SELECT (akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata WHERE ID_no = '" & Request.QueryString("ID") & "'"
Avatar billede chakazulu Nybegynder
05. januar 2010 - 20:11 #4
Virker næsten.... scriptet ligger alle tallene sammen, men uden at +plusse?


<%

'Dimension variables
Dim adoCon             'Holds the Database Connection Object
Dim rsGuestbook            'Holds the recordset for the record to be updated
Dim strSQL            'Holds the SQL query for the database
Dim lngRecordNo            'Holds the record number to be updated

'Read in the record number to be updated
lngRecordNo = CLng(Request.QueryString("ID"))

'Create an ADO connection odject
Set adoCon = Server.CreateObject("ADODB.Connection")

'Set an active connection to the Connection object using a DSN-less connection
adoCon.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("cykeldata.mdb")

'Set an active connection to the Connection object using DSN connection
'adoCon.Open "DSN=guestbook"

'Create an ADO recordset object
Set rsGuestbook = Server.CreateObject("ADODB.Recordset")

'Initialise the strSQL variable with an SQL statement to query the database
strSQL = "SELECT ID_no,(akat1stk + bkat1stk + ckat1stk + dkat1stk) AS total FROM tblbestillingsdata WHERE ID_no=" & lngRecordNo

'Open the recordset with the SQL query
rsGuestbook.Open strSQL, adoCon
%>

<% Response.Write rsGuestbook("total")%>

Virker næsten.... scriptet ligger alle tallene sammen, men uden at +plusse?
Avatar billede Slettet bruger
05. januar 2010 - 20:17 #5
Hvad mener du med +plusse? Hvad er output og hvad er forventet output?
Avatar billede pi-hus Nybegynder
06. januar 2010 - 06:54 #6
Er felterne tekstfelter eller talfelter?
Hvis de er tekstfelter, så er det derfor tallene stilles efter hinanden.
Avatar billede Slettet bruger
06. januar 2010 - 09:52 #7
#6 det er nok det, vi er ude i.. Det er typisk access at please brugeren ved f.eks. at benytte operatorerne alternativt eller afprøve forskellige datoformater, som overlapper hinanden (little endian vs middle endian).

strSQL = "SELECT (int(akat1stk) + int(bkat1stk) + int(ckat1stk) + int(dkat1stk)) AS total FROM tblbestillingsdata WHERE ID_no = '" & Request.QueryString("ID") & "'"
Avatar billede chakazulu Nybegynder
06. januar 2010 - 11:05 #8
TAK til kvadratrodenaf1 - hent dine point her!

Og Tak til pi-hus - hent dine point på nedenstående URL http://www.eksperten.dk/spm/897371

MANGE TAK FOR HJÆLPEN :) Får lækkert med sådan et par genier!
Avatar billede Slettet bruger
06. januar 2010 - 11:52 #9
Velbekommen :)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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