Hej! Lite svårt att förstå vad du menar. Hej,Problem med svar i SQL-update
Jag har två tabeller med transaktioner i en access-db. Gemensamt har de kundnr på varje rad. Kundnr är inte unikt utan kan komma flera gånger i en tabell. Jag har en update-fråga som uppdaterar ett fält i den ena tabellen med data från den andra tabellen där kundnr + ett par till andra värden matchar. I samma fråga så slår den om ett true/false-fält till true vilket innebär att det värdet är returnerat till den andra tabellen och således inte skall kunna användas igen. Trots detta så kan frågan hämta samma rad flera gånger från den andra tabellen, har det med vilken ordning som sql-frågan utför kommandona? Finns det någon lösning på detta, kan man köra sql-frågan på en rad i tagit så att säga? Ska man köra någon form av recordset, jag har varit inne på den banan men inte kommit på hur det skulle gå till.
Jag skulle vara väldigt tacksam för lite hjälp i frågan, jag börjar bli smått desperat!
Mvh AlexSv: Problem med svar i SQL-update
KAn du beskriva datastruktur, tabeller, fält och datatyper.
Samt lite exempeldata före förändring och efter förändring.Sv: Problem med svar i SQL-update
Ska försöka förklara närmare. Databasen används för att skapa filer till ett eknomisystem. Tabellerna är uppdelade på 1. Negativa fakturor och 2. Positiva fakturor. Dessa ligger på kundnivå och har gemensamt ett kundnummer som jag använder för att få träff.
Tabellerna ser ut så här....
Tbl_1:
kundnr (text)
fakturanr (tal, indexerat)
fakturanr-retur (tal)
matchad (true/false)
Tbl_2:
kundnr (text)
fakturanr (tal, indexerat)
fakturanr-retur (tal)
matchad (true/false)
Min fråga ser ut så här:
<code>
DoCmd.RunSQL _
"UPDATE Tbl_1, Tbl_2 SET Tbl_1.[fakturanr-retur] = Tbl_2.[fakturanr], " _
& "Tbl_1.matchad = True, Tbl_2.matchad = True " _
& "WHERE Tbl_1.kundnr = Tbl_2.kundnr AND Tbl_1.matchad = False " _
& "AND _Tbl_2.matchad = False;"
</code>
Vad som händer är att jag får samma fakturanr från Tbl_2 på flera ställen i Tbl_1 när jag kör frågan.
Någon idé?
Alex