Avatar billede thomas-k Nybegynder
24. marts 2007 - 13:23 Der er 7 kommentarer og
1 løsning

Upload.form med tal værdi i access

Når jeg indsætter noget i min database gør jeg følgende:

Upload.Form("blabla")

Det virker også fint når det er en tekst datatype, men lige så snart det er en tal datatype, opstår der fejl. Nogle som kan hjælpe med hvad jeg skal skrive?
Avatar billede thomas-k Nybegynder
24. marts 2007 - 13:34 #1
Fejlen opstår i øvrigt kun når der ikke indføres en værdi til upload.form.... skriver jeg et tal går den fint i gennem...
Avatar billede keysersoze Ekspert
24. marts 2007 - 13:40 #2
tjek for om formfeltet er tomt - hvis ja, så indsæt NULL i stedet;

If Upload.Form("blabla") = "" Then
  VAR = "null"
Else
  VAR = Upload.Form("blabla")
End If
Avatar billede madeindk Nybegynder
24. marts 2007 - 13:46 #3
Tror det er en dum ide - tror bare det skal se sådan her ud:

If Upload.Form("blabla") <> "" Then
  strBlabla = Upload.Form("blabla")
Else
  strBlabla = 0
End If
Avatar billede thomas-k Nybegynder
24. marts 2007 - 13:49 #4
oki, men hvorledes gør jeg så hvis jeg indsætter en masse andre funktioner?

ex:

strSQL = "Insert into tabel (teskst1, teskst2, tekst3, tal1) values('" & Upload.Form("tekst1") & "','" & Upload.Form("tekst2") & "', '" & Upload.Form("tekst3") & "', '" & Upload.Form("tal1") & "')"
Avatar billede keysersoze Ekspert
24. marts 2007 - 14:01 #5
det er altid bedre at indsætte ingenting (altså null) fremfor 0 - null-værdien kan aldrig skabe problemer hvorimod 0 i teorien kan referere til en anden tabel der ikke har den nøgle.

En helt anden ting er, at det så slet ikke vil gøre nogen forskel med den SQL da tal1 åbenbart ikke er et talfelt.

hvilken fejl får du
Avatar billede thomas-k Nybegynder
24. marts 2007 - 14:05 #6
Problemet for mig er at få if sætningen i samarbejde med insert sætningen...

Fejlen er denne:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC Microsoft Access-driver] Datatyperne stemmer ikke overens i kriterieudtrykket.
Avatar billede keysersoze Ekspert
24. marts 2007 - 14:20 #7
Nææh - en fejlmeddelelse så vi ligefrem ved hvad vi skal lede efter...

If Upload.Form("tal1") = "" Then
  VAR = "null"
Else
  VAR = Upload.Form("tal1")
End If

strSQL = "Insert into tabel (teskst1, teskst2, tekst3, tal1) values('" & Upload.Form("tekst1") & "','" & Upload.Form("tekst2") & "', '" & Upload.Form("tekst3") & "', " & VAR & ")"
Avatar billede thomas-k Nybegynder
24. marts 2007 - 14:23 #8
Jeps, lige hvad jeg skulle bruge. Takker keysersoze.
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