Avatar billede mr-d Nybegynder
19. december 2002 - 13:36 Der er 3 kommentarer og
1 løsning

SQL INSERT INTO access DB

Hej med jer

nogle bud på hvorfor jeg får "expected end ogg statement" på denne sql?

strSQLQuery = "INSERT INTO Clients ("CustomerID, CustomerCompany, CustomerEmail, Status, ImpPur, ImpNow, ClicksNow, StartDate, ImgUrl, LinkTo, SizeOf1, SizeOf2, TextUnder, Type") VALUES ('"&strCustomerID&"', '"&strCustomerCompany&"', '"&strCustomerEmail&"', '"&strStatus&"', '"&strImpPur&"', '"&strImpNow&"', '"&strClicksNow&"', '"&strStartDate&"', '"&strImgUrl&"', '"&strLinkTo&"', '"&strSizeOf1&"', '"&strSizeOf2&"', '"&strTextUnder&"', '"&strType&"')"
conn.execute(strSQLQuery)
Avatar billede tintin12 Nybegynder
19. december 2002 - 13:44 #1
pga for mange "'er

strSQLQuery = "INSERT INTO Clients (" <<<-----
Avatar billede eagleeye Praktikant
19. december 2002 - 13:47 #2
Typsik er det fordi er er en stregn som ikke er sluttet rigtigt og i SQL skal der ikke " omkring kolonnnernen.

En anden ting er at Type er reserveret ord i SQL så der skal [] omkring kolonnetnvnet [type]

strSQLQuery = "INSERT INTO Clients (CustomerID, CustomerCompany, CustomerEmail, Status, ImpPur, ImpNow, ClicksNow, StartDate, ImgUrl, LinkTo, SizeOf1, SizeOf2, TextUnder, [Type]) VALUES ('"&strCustomerID&"', '"&strCustomerCompany&"', '"&strCustomerEmail&"', '"&strStatus&"', '"&strImpPur&"', '"&strImpNow&"', '"&strClicksNow&"', '"&strStartDate&"', '"&strImgUrl&"', '"&strLinkTo&"', '"&strSizeOf1&"', '"&strSizeOf2&"', '"&strTextUnder&"', '"&strType&"')"
conn.execute(strSQLQuery)
Avatar billede eagleeye Praktikant
19. december 2002 - 13:50 #3
Hvis en kolonne er defineret som tal (number) skal der ikke ' omkring i SQL'en eksvis hvi CustomerID er defineret som tal i tabellen så skal SQL se sådan her ud.:

strSQLQuery = "INSERT INTO Clients (CustomerID, CustomerCompany, CustomerEmail, Status, ImpPur, ImpNow, ClicksNow, StartDate, ImgUrl, LinkTo, SizeOf1, SizeOf2, TextUnder, [Type]) VALUES ("&strCustomerID&", '"&strCustomerCompany&"', '"&strCustomerEmail&"', '"&strStatus&"', '"&strImpPur&"', '"&strImpNow&"', '"&strClicksNow&"', '"&strStartDate&"', '"&strImgUrl&"', '"&strLinkTo&"', '"&strSizeOf1&"', '"&strSizeOf2&"', '"&strTextUnder&"', '"&strType&"')"
conn.execute(strSQLQuery)
Avatar billede eagleeye Praktikant
19. december 2002 - 13:56 #4
Hvis en kolonne er defineret som  dato/tid (date/time) så skal man sætte # omkring i SQL, og så skal man overføre dato i US/UK format yyyy-mm-dd eller mm-dd-yyyy.
strStartDate = yesr(strStartDate) & "-" & month(strStartDate) & "-" & Day(strStartDate)

strSQLQuery = "INSERT INTO Clients (CustomerID, CustomerCompany, CustomerEmail, Status, ImpPur, ImpNow, ClicksNow, StartDate, ImgUrl, LinkTo, SizeOf1, SizeOf2, TextUnder, [Type]) VALUES ("&strCustomerID&", '"&strCustomerCompany&"', '"&strCustomerEmail&"', '"&strStatus&"', '"&strImpPur&"', '"&strImpNow&"', '"&strClicksNow&"', #"&strStartDate&"#, '"&strImgUrl&"', '"&strLinkTo&"', '"&strSizeOf1&"', '"&strSizeOf2&"', '"&strTextUnder&"', '"&strType&"')"
conn.execute(strSQLQuery)
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