Avatar billede Slettet bruger
28. september 2006 - 12:44 Der er 5 kommentarer og
1 løsning

Problemer med Insert Into

Hej

Jeg bruger følgende kode til at aggregere en masse data:
Public Function aggreger()
On Error Resume Next
Dim DB As New ADODB.Connection
Dim RecSet As New ADODB.Recordset
Set DB = CurrentProject.Connection
InputTabel = "DSM"
RecSet.Open InputTabel, DB, adOpenKeyset, adLockOptimistic, adCmdTable
ID2 = 0
z2 = -100
i = 1
Do While (RecSet.EOF = False)
    ID1 = RecSet("OBJECTID")
    If ID2 = ID1 Then
        z1 = RecSet("Z")
        z_agg = z_agg + z1
        If z1 > z2 Then
            z_max = z1
        End If
        i = i + 1
        z2 = z1
    Else
        z_mean = z_agg / i
        If ID2 > 0 Then
            StrSQL = "Insert into DSM_agg (OBJECTID, z_mean, z_max) values(ID2, z_mean, z_max)"
            DB.Execute (StrSQL)
        End If
        If i > 1 Then
            i = 1
            z_agg = 0
        Else
            z_agg = RecSet("Z")
        End If
    End If
    ID2 = ID1
    j = j + 1
    RecSet.MoveNext
Loop
End Function

Hvor jeg læser i tabellen DSM og vil skrive til tabellen DSM_agg men der bliver intet skrevet til min tabel DSM_agg. Hvad er det jeg gør forkert?
Avatar billede terry Ekspert
28. september 2006 - 13:10 #1
StrSQL = "Insert into DSM_agg (OBJECTID, z_mean, z_max) values(" & ID2 "," &  z_mean & "," & z_max & ")"
Avatar billede terry Ekspert
28. september 2006 - 13:11 #2
when you use
..values(ID2, z_mean, z_max)"
it is just a string containingth ewords ID2 z_mean and z_max. To get the valuse of the variables youhave to putthe variables outisde of the string
Avatar billede terry Ekspert
28. september 2006 - 13:12 #3
still no quite right

StrSQL = "Insert into DSM_agg (OBJECTID, z_mean, z_max) values(" & ID2 & "," &  z_mean & "," & z_max & ")"

and if any of the values are sting vales then they need to be placed inside ''
Avatar billede Slettet bruger
28. september 2006 - 13:20 #4
Tak for hjælpen.

Nu er der så det mindre problem at når jeg indsætter z_mean og z_max værdierne er det kommatal. Det giver lidt problemer i forhold til at komma også er separator i SQL-sætningen.

Kan det omgås?
Avatar billede Slettet bruger
28. september 2006 - 13:33 #5
Har selv løst problemet med kommatal ved at indsætte det som en tekststreng.

Accepterer lige dit svar Terry
Avatar billede terry Ekspert
28. september 2006 - 13:48 #6
tak
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