26. maj 2005 - 12:36Der er
5 kommentarer og 1 løsning
Len() returnere intet
Jeg har en simpel funktion (som jeg har brugt 10.000 gange før) som skal svare mig på om længden af et felt fra mit rs er længere end 0, men af en eller anden grund returnerer den intet, ikke engang 0, hvad kan der gå galt?
Jeg bruger: If Len(rs("Indhold")) > 0 Then Response.Write rs("Billede")
Det virker fint når jeg bare udskriver rs("Billede") eller rs("Indhold"), men hvis rs("Indhold") er tom vil den ikke returnere noget. (If Not Len(rs("Indhold")) < 1 virker heller ikke!)
Pointen er at når rs("Indhold") ikke er defineret - og altså heller ikke er en streng - så er det heller ikke veldefineret hvad længden bør være. Det svarer til at et tekstfelt i databasen både kan være NULL eller "" - og det er bestemt ikke det samme. Derfor returnerer Len() intet.
Workarounden består i sin simpelthen i at konvertere NULL-værdierne til den tomme streng. Hvis det i forvejen var den tomme streng som var i feltet, ændre workarounden ikke på det.
Giv mig 15 points og tag resten tilbage. Så svært var spørgsmålet trods alt heller ikke. :^)
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.