Avatar billede larsbachmanndk Nybegynder
17. juni 2005 - 09:45 Der er 5 kommentarer og
1 løsning

Insert into true/false felt i access

Hej Eksperter.

Jeg har et lille problem..

Jeg har en form, hvor der bl.a. er 2 radiobuttons. Og alt efter hvilken man vælger skal den sætte et true/false felt i en access db til henholdsvis true eller false, men den skriver at der er en syntaks error i sql sætningen.
Avatar billede larsbachmanndk Nybegynder
17. juni 2005 - 09:46 #1
Her er de 2 radiobuttons:

Privat: <input type="radio" name="type" value="false">
Til alle: <input type="radio" name="type" value="true">

Her er sql sætningen:

Dim rs
Set rs = ObjConn.Execute("INSERT INTO calendar (c_date, c_time, subject, appoitment, caluser, public) VALUES ('" & strSdate &  "', '" & strStime &  "', '" & Request.Form("subject") & "', '" & Request.Form("appoitment") & "', '" & Request.Form("user") & "'), '" & Request.Form("type") & "')")
Avatar billede fennec Nybegynder
17. juni 2005 - 09:58 #2
Der skal ikke ' omkring true/false værdier. Ellers bliver det opfattet som en tekst, og du få den omtalte fejl:

Set rs = ObjConn.Execute("INSERT INTO calendar (c_date, c_time, subject, appoitment, caluser, public) VALUES ('" & strSdate &  "', '" & strStime &  "', '" & Request.Form("subject") & "', '" & Request.Form("appoitment") & "', '" & Request.Form("user") & "'), " & Request.Form("type") & ")")
Avatar billede fennec Nybegynder
17. juni 2005 - 09:59 #3
Hvis det ikke virker så prøv med 0/1 i stedet for true/false.
.o) <-- One Eyed Jack
Avatar billede larsbachmanndk Nybegynder
17. juni 2005 - 10:08 #4
det var rigtig at der ikke skulle ' omkring, men jeg havde prøvet både med og uden.
Problemet er dog løst ved at omdøbe "public" i databasen til noget andet.

Er der godt nok nogle ord det ikke er tilladt at bruge i access. jeg har bl.a. før haft problemer med et opdatere noget sql hvis felterne i db'en hedder time eller date.?
Avatar billede fennec Nybegynder
17. juni 2005 - 10:47 #5
Der er mange ord der ikke er tilladt, var dog ikke klar over at public var en af dem. Et ord som mange ofte bruger er "by", når man gemmer addresser. Dette er et fy fy ord, da det bruges når man sortere (hvis man så sortere efter by "order by by"!!!), af samme grund må man heller ikke bruge "order".

Man kan dog godt bruge dem alligevel (men jeg fraråder det). Det skal bare typcastes. Der bruger man [] eller ´ afhængig af database. I access ville det se sådan ud:

"insert into enTabel(navn,[by],zip,[public]) values('abc','abc','abc','abc')"
"select * from enTabel order by [by]"
Avatar billede larsbachmanndk Nybegynder
17. juni 2005 - 11:19 #6
Tak for din forklaring
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