webForumDet fria alternativet
Logga in / Bli medlem

Syntax error in INSERT INTO statement

ASP

10 svar · 312 visningar · startad av plelkes

Medlem sedan mars 2002823 inlägg
Trådstart#1

Hej alla gladad wfare...
Ser ni felet i nedanstående kod

Set vatskeb = Server.CreateObject( "Adodb.Connection" )
vatskeb.Provider = "Microsoft.Jet.OLEDB.4.0"
MdbFilePath = Server.MapPath("\vatskebalans\db\vbalans.mdb")
vatskeb.ConnectionString = "Data Source='" & MdbFilePath & "'"
vatskeb.open

personnr = Request.Form("pnr")
Tilltnamn = Request.Form("firstnamn")
Eftn = Request.Form("familjenamn")
ind = FormatDateTime(Date, 2)

strSQL = "INSERT INTO vbalans(patID, ftFnamn, ftEnamn, In) VALUES('" & personnr & "','" & Tilltnamn & "','" & Eftn & "', #" & ind & "#)"
vatskeb.Execute strSQL, , 128
            
vatskeb.close
Set vatskeb = Nothing
Response.Redirect "meny.htm"

För det gör nämligen inte jag...

Om jag gör Response.Write strSQL

INSERT INTO vbalans(patID, ftFnamn, ftEnamn, In) VALUES('','','', #12/3/2003#)

det verkar som endast ett " eller två enkel fjuttar som läggs till

Medlem sedan dec. 19996 522 inlägg
#2

Vad är patID för typ av fält, är det räknare tal ska du skippa ' fnuttarna

Medlem sedan juni 200032 967 inlägg
#3

IN är ett reserverat ord. Byt namn på fältet, eller klamra om du måste.

Mvh

Medlem sedan mars 2002823 inlägg
#4

erka: patID är tal - att jag aldrig lär mig*snyft*

@nders skrev:

.... eller klamra om du måste

hur menar du det?

Medlem sedan dec. 19996 522 inlägg
#5

[In]

Medlem sedan juni 200032 967 inlägg
#6

Även om man kan klamra enligt erkas exempel så är det inte att rekommendera. Råkar man sno ett reserverat ord till namn i sin databas någonstans, då ska man genast byta. :)

Mvh

Medlem sedan mars 2002823 inlägg
#7
  1. ok - då skippar jag enkel fnuttarna
  2. döper om fältet IN till ngt annat tex fIN
  3. kan personnumer fortfarande vara tal fast jag vill ha inmatning : ÅÅMMDD - 123
Medlem sedan dec. 200012 464 inlägg
#8

3. Om du vill lagra det som ååmmdd-7536 så måste du använda en char-datatyp.

Medlem sedan dec. 19996 522 inlägg
#9

plelkes, skulle gjort personnummerfältet som tal och skrivit lagt in dem som ÅÅMMDDXXXX, sedan vid presentationen splittar du upp det och skriver ut - tecknet.

Medlem sedan mars 2002823 inlägg
#10

LarsG skrev:

Om du vill lagra det som ååmmdd-7536 så måste du använda en char-datatyp.

  1. finns verkligen dessa i en access-databas?
  2. skulle man kunna få ett exempel på srtSQL-kod konstruktion?
Medlem sedan dec. 19996 522 inlägg
#11

1. I access får du använda text, längd efter antalet tecken.

Kan du förklara vad du menar med fråga 2.?

255 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)