---
title: "Problem med NULL"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/105217-problem-med-null"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Fireh"
published: "2004-06-07T19:47:26.000Z"
updated: "2004-06-08T08:13:17.000Z"
replies: 8
views: 372
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/105217-problem-med-null"
---

# Problem med NULL

## #1 — Fireh, 2004-06-07T19:47Z

Nu tänker jag en gång för alla gå till botten med detta som irriterar mig så extremt. Om jag inte har något skrivet i ett fält, så har den värdet NULL. Bra så långt... När jag däremot behöver läsa ut värdet i fältet och kolla om det är NULL eller om det innehåller data, så blir det knäppt. Jag kör följande kod:

```
If rs1("Dit_kl") <> "" Then Dit_kl = rs1("Dit_kl") Else Dit_kl="Inget"
```

Det genererar följande fel oavsett om det är NULL eller inte:

> (0x80020009)
> Undantag inträffade.

Detta har jag alltid avhjälpt genom att läsa in värdet i en variabel först, för av nån korkad anledning går det inte att läsa samma värde 2 gånger. Problemet kommer då när man läser in värdet i variabeln Dit_kl och det är NULL. Då vet inte jag hur man kollar om det är NULL. För om jag kör detta:

```
If rs1("Dit_kl") =  "" Then Nåt Else Nåt
```

Så kör den koden efter Else. Dvs det är NULL, men "" är inte NULL, men hur kollar jag om det är NULL?

Tack på förhand!

Permalänk: https://www.webforum.nu/p/105217

## #2 — LarsG, 2004-06-07T19:54Z

```
Dit_kl = rs("dit_kl")
if isnull(Dit_kl) then
```

Flyttas från Mysql

Permalänk: https://www.webforum.nu/p/1362627

## #3 — K@llen, 2004-06-07T19:54Z

En tom sträng är inte det samma som null. Du kan kolla det med en funktion i vb-script:

```
if isnull(rs1("Dit_kl")) then 
    ' jo, den var null
end if
```

eller direkt i sql-frågan

```
select * from tabellen where Dit_kl is not null
```

Hämtar alla poster där Dit_kl inte är null.

Permalänk: https://www.webforum.nu/p/1362628

## #4 — Fireh, 2004-06-07T20:12Z

Tack båda två!
Att plocka ut direkt i frågan kunde jag.
Men här är det inte aktuellt att göra det.

Det verkar fungera.
Tackar!

Permalänk: https://www.webforum.nu/p/1362647

## #5 — Engine^, 2004-06-07T22:45Z

VBScript och null är irriterande. null finns inte i VBS.

Med tanke på den If-sats du hade i början så är det alltid "bättre" (snabbare) att undersöka om en sträng är tom med

```
If Len([i]sträng[/i]) = 0 Then ...
```

Permalänk: https://www.webforum.nu/p/1362773

## #6 — Nexus86, 2004-06-07T23:00Z

> **Engine^ skrev:**
>
> VBScript och null är irriterande. null finns inte i VBS.

Klart det finns. Det heter bara inte null. För strängar heter det vbNullString och för objekt Nothing.

Ex:

```
If [b][i]sträng[/i][/b] = vbNullString Then        ' Samma sak som [i]If sträng = "" Then[/i]
	' Strängen är tom
End If

Dim FS
Set FS = CreateObject("Scripting.FileSystemObject")

If FS Is Nothing Then
	' FS är av typen Object men inte satt som referens till något
End If

Set FS = Nothing
```

r/ Lite kommentarer

Permalänk: https://www.webforum.nu/p/1362778

## #7 — Engine^, 2004-06-07T23:15Z

Jag håller väl med dig en aning...

If ***sträng*** \= vbNullString

Är detsamma som

If Len(***sträng***) = 0

Jag vidhåller att *null* inte finns i VBS. Nu menar jag inte att det inte sker på samma sätt i andra språk utan mer att VBS är aningen tvetydigt på den punkten.

Permalänk: https://www.webforum.nu/p/1362783

## #8 — @nders, 2004-06-08T04:10Z

Engine^, jag förstår inte riktigt vad du menar.

```
strNull = Null
If IsNull(strNull) then response.write "Jo, den är null?"
```

Len(Null) är dessutom inte noll.

Permalänk: https://www.webforum.nu/p/1362812

## #9 — Engine^, 2004-06-08T08:13Z

<http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vsconstring.asp>

Permalänk: https://www.webforum.nu/p/1362886

---

Tråden på webben: https://www.webforum.nu/amne/asp/105217-problem-med-null
