05. februar 2003 - 12:58
Der er
11 kommentarer og 1 løsning
sql fejl eller ??
Jeg har 2 Access Db som er næsten ens, en gammel og en ny. I den gamle eksisterer nogle poster som jeg mangler i den nye. Når jeg afvikler denne kode: Sub Main() Set db = New Connection Set dbNew = New Connection db.ConnectionString= "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & "G:\Arbejdsarkiv\C5.mdb" dbNew.ConnectionString= "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & "G:\Arbejdsarkiv\C5Test.mdb" db.Open dbNew.Open Set rs = db.Execute("SELECT * FROM Klienter") Dim bFound As Boolean While Not rs.EOF Set rsNew = dbNew.Execute("SELECT * FROM Klienter") bFound = False While Not rsNew.EOF If rs("Id") = rsNew("Id") Then bFound = True End If rsNew.MoveNext Wend If bFound = False Then dbNew.Execute ("INSERT INTO Klienter (Id, Navn1, Navn2, Adresse1, Adresse2, PostNr, By, Land, Telefon, Telefax, Bank, Giro, Reg_Nr, SE, Import, PBSnr, Afd, Status, BrugesAf, Opdateret, Kontorsted) VALUES ('" & rs("Id") & "', '" & rs("Navn1") & "', '" & rs("Navn2") & "', '" & rs("Adresse1") & "', '" & rs("Adresse2") & "', '" & rs("PostNr") & "', '" & rs("By") & "', '" & rs("Land") & "', '" & rs("Telefon") & "', '" & rs("Telefax") & "', '" & rs("Bank") & "', '" & rs("Giro") & "', '" & rs("Reg_Nr") & "', '" & rs("SE") & "', '" & rs("Import") & "', '" & rs("PBSnr") & "', '" & rs("Afd") & "', '" & rs("Status") & "', '" & rs("BrugesAf") & "', '" & rs("Opdateret") & "', 'Kbh')") End If rs.MoveNext Wend rs.Close db.Close Set rs = Nothing Set db = Nothing End Sub får jeg følgende fejlmeddelelse: Runtime error '-2147217900(80040e14)' Der er syntaksfejl i INSERT INTO-sætningen. Hvad er der galt ???
Annonceindlæg fra Deloitte
05. februar 2003 - 13:02
#1
Prøv i stedet: dim sSQL as string sSQL = INSERT INTO Klienter (Id, Navn1, Navn2, Adresse1, Adresse2, PostNr, By, Land, Telefon, Telefax, Bank, Giro, Reg_Nr, SE, Import, PBSnr, Afd, Status, BrugesAf, Opdateret, Kontorsted) VALUES ('" & rs("Id") & "', '" & rs("Navn1") & "', '" & rs("Navn2") & "', '" & rs("Adresse1") & "', '" & rs("Adresse2") & "', '" & rs("PostNr") & "', '" & rs("By") & "', '" & rs("Land") & "', '" & rs("Telefon") & "', '" & rs("Telefax") & "', '" & rs("Bank") & "', '" & rs("Giro") & "', '" & rs("Reg_Nr") & "', '" & rs("SE") & "', '" & rs("Import") & "', '" & rs("PBSnr") & "', '" & rs("Afd") & "', '" & rs("Status") & "', '" & rs("BrugesAf") & "', '" & rs("Opdateret") & "', 'Kbh')" debug.print(sSQL) 'dbNew.Execute(sSQL) ...og post det så her i gruppen hvis det ikke er indlysende hvad der er galt.
05. februar 2003 - 13:14
#2
den printer debuggen men den forsvinder med det samme så jeg aldrig når at se den,. hvad gør jeg ved det ?
05. februar 2003 - 13:16
#3
aahhh ok,.. her er den: INSERT INTO Klienter (Id, Navn1, Navn2, Adresse1, Adresse2, PostNr, By, Land, Telefon, Telefax, Bank, Giro, Reg_Nr, SE, Import, PBSnr, Afd, Status, BrugesAf, Opdateret, Kontorsted) VALUES ('102140', 'Frank Møller Christensen', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '301', '', 'TIP', '07-12-98 09:12:21', 'Kbh')
05. februar 2003 - 13:19
#4
Tror du ikke ID er numerisk? I så fald skal du fjerne '-erne omkring den. Du kan også prøve at sætte #-er omkring data i "opdateret"-feltet.
05. februar 2003 - 13:19
#5
ELLER også autogenererer den ID - i så fald skal den slet ikke med i dit statment.
05. februar 2003 - 13:21
#6
ALT er string eller tekst, og ingen autogenerering
05. februar 2003 - 13:23
#7
Det eneste der er med Id er at den er primærnøgle,..
05. februar 2003 - 13:40
#8
Jeg har prøvet alt mulig nu,.. er der andre forslag,..?? Jeg har også prøvet at fjerne primærnøglen,..men med samme resultat
05. februar 2003 - 13:41
#9
Prøv at køre dit insert som query direkte i Access?
05. februar 2003 - 14:00
#10
Det har jeg så også lige forsøgt,. og sætter jeg kun id ind og glemmer alt det andet virker det fint,.. men sætter jeg andre værdier ind går det galt. Jeg har prøvet med følgende sætning direkte på access db : INSERT INTO Klienter (Id, Navn1, Navn2, Adresse1, Adresse2, PostNr, By, Land, Telefon, Telefax, Bank, Giro, Reg_Nr, SE, Import, PBSnr, Afd, Status, BrugesAf, Opdateret, Kontorsted) VALUES ('113851', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '')
05. februar 2003 - 14:19
#11
YEESSSSS Jeg har fundet det,.. :o) Man må ikke bruge ordet "By" da det er et reserveret ord :o)
05. februar 2003 - 14:35
#12
Nå nej... Du kan bare sætte det i [], altså [By].
Kurser inden for grundlæggende programmering