webForumDet fria alternativet

Hur lagra null-variabler.

ASP

6 svar · 329 visningar · startad av Oputres

Medlem sedan feb. 2004333 inlägg
Frågan#1

Allå!

Det här är mycket irriterande. Jag har flera formulärfält som skall kunna lämnas tomma. Om så sker skall motsvarande fält i min Accessdatabas lämnas tomt. Men hur skall jag göra?

Borde man inte kunna göra något i den här stilen:

Dim strTelefon
strTelefon= Request.Form("Telefonnummer")
If Len(strTelefon) = 0 Then
  strTelefon= Null
Else
  strTelefon = strTelefon
End If
(INSERT SQL-SATS)

Jag får bara meddelandet att databasfältet inte får lämnas tomt.

Eftersom jag har flera fält som kan lämnas tomma vill jag ju lägga över infon i variabler så det räcker med en SQL-sats.

Hur göra?

Medlem sedan mars 20032 667 inlägg
#2

Ställ in kriterierna för aktuell kolumn att tillåta tomt innehåll. Du behöver inte skicka in null som värde ...

Medlem sedan juni 200032 967 inlägg
#3

Använd strängen null i vbscript / sql.

If Len(strTelefon) = 0 Then
  strTelefon= [b]"Null"[/b]
Else
  strTelefon = strTelefon
End If

mvh

Medlem sedan feb. 2004333 inlägg
#4

Ställ in kriterierna för aktuell kolumn att tillåta tomt innehåll. Du behöver inte skicka in null som värde ...

Hur gör man detta? Jag har kollat egenskaperna för fältet som är av Texttyp. Det står Nej under Obigatorsik men fungerar ändå inte.

Anders, din variant lagrade ordet Null i fältet :(

Medlem sedan juni 200032 967 inlägg
#5

Om du ska lagra värdet NULL i fälten får du inte ha apostrofer runt ordet NULL i SQL-frågan.

Finns det ingen markering i Access för "Tillåt nollängd"?

Medlem sedan feb. 2004333 inlägg
#6

Tillåt nollängd = Ja fixade biffen!

Det blev ju problem med apostroferna iom att jag bara hade en SQL-sats där fältet kunde fyllas med en 'strVariabel' bestående av antingen Null eller "Värde". Null hamnade ju då inom apostroferna :(

Men det här blev ju skitbra!

Medlem sedan juni 200032 967 inlägg
#7

Det blev ju problem med apostroferna iom att jag bara hade en SQL-sats där fältet kunde fyllas med en 'strVariabel' bestående av antingen Null eller "Värde". Null hamnade ju då inom apostroferna

Ett förslag är att lägga in apostroferna i variabeln, och inte runt variabeln i SQL-frågan:

If Len(strTelefon) = 0 Then
  strTelefon= "Null"
Else
  strTelefon = "'" & strTelefon & "'"
End If
334 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
206 ms — ändringar (db)