Avatar billede jannikf Nybegynder
09. marts 2006 - 19:10 Der er 11 kommentarer og
1 løsning

Indsætte tal i access?

Jeg benytter mig af følgende kode når jeg indsætter data i en access db, men støder i problemer når side i db'en bliver lavet om til taltype. Har læst mig frem til at jeg blot skal fjerne '  ved brug af taltyper, men det har ikke hjulpet. Hvad skal jeg ændre ved koden?

strSQL = "Insert into underside ("
strSQL = strSQL & "undertitel, "
strSQL = strSQL & "tekst, "
strSQL = strSQL & "side) "

strSQL = strSQL & "values( "

strSQL = strSQL & "'" & strTitel & "', "
strSQL = strSQL & "'" & strTekst & "', "
strSQL = strSQL & "'" & strSide & "')"

Conn.Execute(strSQL)
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:14 #1
Ja normalt skal man fjerne ' omkring tallet i SQL sætningen.

Hvilken type tal vil du indsætte, heltal eller kommatal?
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:15 #2
Heltal. Tallene jeg vil indsætte kommer fra en option form:
strSide = Request.Form("frmSide")
som går fra 0-6.
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:16 #3
ok ja så skulle det virke hvis du fjerner '

Hvilken fejl får du?
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:20 #4
Ved:
strSQL = strSQL & "'" & strTitel & "', "
strSQL = strSQL & "'" & strTekst & "', "
strSQL = strSQL & "" & strSide & ")"
får jeg en http 500 fejl hvor fejlen ikke beskrives yderligere.

ved:
strSQL = strSQL & "'" & strTitel & "', "
strSQL = strSQL & "'" & strTekst & "', "
strSQL = strSQL & strSide & ")"
får jeg det samme som ovenstående
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:25 #5
For at få vist en bedre fejl kode + tekst kan du slå "udskadelige" fejl visning fra i IE.

I IE menuen vælges:
1. funktioner
2. klik på internetindstillinger
3. kilk på avanceret
4. find og fjern kryds i "vis meddelelse om uskadelige http-fejl" checkboxen
5. gem og reload siden
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:29 #6
Ah tak, troede ellers jeg havde gjort det før.

Den melder om "Data type mismatch in criteria expression" når den executer strSQL.
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:31 #7
ok og det er side du har rette til en tal kolonne ?
Har du husket at uploade den nye database fil? :)
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:34 #8
Ja side i underside-tabellen er sat til number.
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:36 #9
Har fundet fejlen og undskylder mange gange for at have spildt din tid. Fejlen lå simpelthen i at formen hed side i stedet for frmSide. Men selvom jeg beholder ' så indsætter den stadig fint i tabellen.
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:37 #10
Prøv at udskrive strSQL i stedet for at execute den, for at tjekke at strSide indeholder en værdi.


strSQL = "....

response.write strSQL
response.end  'stopper siden her fjerne igen bagefter
Conn.Execute(strSQL)
Avatar billede jannikf Nybegynder
09. marts 2006 - 19:38 #11
Ja, din kommentar ville have løst mit problem ved at jeg så kunne se at den ikke indeholdt nogen værdi. Indryk bare et svar. Tak for hjælpen :)
Avatar billede eagleeye Praktikant
09. marts 2006 - 19:39 #12
ok, så kommer her et svar :-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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