06. oktober 2009 - 22:11Der er
17 kommentarer og 1 løsning
Tomt tal i access hjælp?
Hej jeg har et lille problem når jeg prøver at oprette i access. Det viker fint hvis jeg bruger text men hvis jeg ændre feltet til number så laver den Data type mismatch in criteria expression. Men det skulle helst være number felt da jeg skal bruge det til at sortere efter i rigtig rækkefølge. Jeg har prøvet at sætte default value til 0 og null i access men uden held.
du skal indsætte NULL hvis du ingen talværdi har - dvs du bliver nødt til at lave et tjek inden du når til selve SQL'en. Du bliver nødt til at udskrive din SQL så du (og måske vi) kan se hvordan den reelt ser ud inden den eksekveres og på den måde spotte fejl.
du får i hvert fald ikke noget ud af at placere det efter din SQL så ja, det skal ind før. I og med at du altid indsætter en værdi, enten NULL eller et tal, vil en defaultvalue være irrelevant.
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14) [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement. /boliger.asp, line 954
MIN KODE:
if mode = "gem" then if Request.Form("bolig_id") = "" Then
If IsNumeric(Request.Form("sortering")) Then var = Request.Form("sortering") Else var = "NULL" End If
Som skrevet i #9 skal du selvfølgelig benytte variablen ved navn "var" tuk at indsætte i stedet for din Request.Form("sortering") - ellers giver det ingen mening at lave tjekket.
Som forsøgt forklaret så brug også de (simple) debug-værktøjer man nu kan i ASP - nemlig udskrivning af variabler, i dit tilfælde din SQL så vi kan se hvad den reelt set indeholder.
En sidste påmindelse er måske at læse lidt om SQL Injection.
Soze det virker sgu.. efter 20 timers irritation :-) tusinde tak for hjælpen.. nu har jeg kun et sidste problem.. som det ser ud nu sorterer den null'erne før 0,1,2,3 - kan man på en eller anden måde få smidt null'erne bagest?
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.