Avatar billede fuglen Nybegynder
01. juni 2004 - 21:31 Der er 11 kommentarer og
1 løsning

Hjælp til SIMPEL sql-streng

Jeg har en form, hvor brugeren kan indtaste et tal som der så søges på i en database. Men kunden vil have at feltet i Access databsen SKAL være et tekst-felt, da der også sjældent kan forkomme bogstaver.

Jeg gør følgende når jeg søger i databasen :

emne = CStr(Request.Querystring("emne"))
  Sql = "Select * From Emner Where Nr="& emne
  Set resultat =  Conn.Execute(Sql)

-men får konstant fejlen :

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.


-jeg synes ellers at jeg har gjort hvad jeg kunne for at datoformaterne skulle være ens :(
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:35 #1
hvis "Nr" er et tal: emne = CInt(Request.Querystring("emne"))
Avatar billede steines Nybegynder
01. juni 2004 - 21:36 #2
Hejsa

Prøv i stedet:

Sql = "Select * From Emner Where Nr='"& emne & "'"

Set resultat =  Conn.Execute(Sql)

Med Venlig Hilsen
Sten
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:36 #3
Hvis "Nr" er ikke-tal (dvs, må indeholde bogstaver): Where Nr='"& emne & "'"
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:42 #4
hmm.. lagde lige mærke til "for at datoformaterne skulle være ens".. :-)

Er "Nr" en dato? Hvis ja, prøv: emne = CDate(Request.Querystring("emne"))

Det skal så nok også være: Where Nr=#"& emne & "#"

..er dog ikke helt sikker..
Avatar billede fuglen Nybegynder
01. juni 2004 - 21:50 #5
stavefejl.. :) Dataformaterne !

-men jeg får det stadig ikke til at virke
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:52 #6
"stavefejl.. :) Dataformaterne !"> ikke forstået..

Prøv det her:

  Sql = "Select * From Emner Where Nr="& emne
  response.write sql
  response.end
  Set resultat =  Conn.Execute(Sql)

Hvad skriver den til dig?
Avatar billede fuglen Nybegynder
01. juni 2004 - 21:54 #7
Dateaformaterne = tal vs. tekst
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:55 #8
Gentager:

  Sql = "Select * From Emner Where Nr="& emne
  response.write sql
  response.end
  Set resultat =  Conn.Execute(Sql)
Avatar billede fuglen Nybegynder
01. juni 2004 - 21:56 #9
-men da jeg er ret presset på tiden har jeg omgået problemet ved at køre databasen igennem med et loop og når den så finder den korrekte vælger den dén.
-lidt mere krævende af serveren, men så når jeg det til tiden :)
Hvis du svarer får du point som tak for hjælpen ;-)
Avatar billede thesurfer Nybegynder
01. juni 2004 - 21:58 #10
OK :-)
når opgaven er afleveret, kan du bare vende tilbage hvis du vil.. så kan vi måske finde en bedre løsning :-)
Avatar billede fuglen Nybegynder
01. juni 2004 - 22:08 #11
Top ! :)
Avatar billede thesurfer Nybegynder
01. juni 2004 - 22:10 #12
Takker for points :-)
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

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging