Avatar billede hehlers Nybegynder
14. maj 2007 - 12:25 Der er 3 kommentarer

udregning og opdatering af db

Hejsa

Jeg har lidt problemer med et auktionssystem.

Jeg har en tabel i en access DB, der hedder tbl_auktion.

dato_ned
h_bud
udregnet
mindstepris
bruger_id

Jeg har et sql kald som vælger alle de auktioner hvor h_bud er større end mindstepris og now() er større end dato_ned og udregnet = false. (laver jeg selv) ;)

Hvis disse betingelser er opfyldt, skal der tages 10% af h_bud. De 10% skal så tillægges konto_ialt i tbl_konto, hvor login_id = bruger_id fra tbl_auktion. Ydermere skal feltet 'udregnet' i tbl_auktion sættes til true.

TBL_KONTO
navn
login_id
konto_ialt

Håber i forstår hvad jeg mener. ( Jeg ved det lyder forvirrende )

På forhånd tak.
Avatar billede w13 Novice
16. maj 2007 - 18:29 #1
Det kunne nok laves smartere, hvis man kendte lidt mere til SQL-kald end jeg gør, så man ikke skulle kommunikere med databasen så mange gange, men du kan jo prøve denne her: (ved ikke om den virker)
-------------------------------------
strSQL = "SELECT [bruger_id], [h_bud] FROM [tbl_auktion] WHERE (...)"
Set rs = Conn.Execute(strSQL)

If Not (rs.BOF Or rs.EOF) Then
    Do While Not rs.EOF
        Set rs2 = Conn.Execute("SELECT [konto_ialt] FROM [tbl_konto] WHERE [login_id] = " & rs("bruger_id"))

        Conn.Execute(strSQL = "UPDATE [tbl_konto] SET [konto_ialt] = " & CInt(rs2("konto_ialt")) + (CInt(rs("h_bud")) * 10) / 100 & " WHERE [login_id] = " & rs("bruger_id"))
        Conn.Execute(strSQL = "UPDATE [tbl_auktion] SET [udregnet] = 'True' WHERE [login_id] = " & rs("bruger_id"))

        rs2.Close
    rs.MoveNext
    Loop
End If
rs.Close
------------------------------------
Så skal du bare rette din WHERE til i:
strSQL = "SELECT [bruger_id], [h_bud] FROM [tbl_auktion] WHERE (...)"

Håber det virker, og at du kan bruge det.
Avatar billede w13 Novice
15. november 2007 - 19:08 #2
Fandt du ud af noget her?
Avatar billede w13 Novice
07. august 2008 - 10:23 #3
Lukketid?
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
Kurser inden for grundlæggende programmering

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