🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #726

Re: null waarden in datatable

#726
From: John Bokma
Date: Sun, 14 May 2006 18:00
52 lines
3170 bytes
StriKe <strike_usenet@internetfreakz.be.invalid> wrote:

>> StriKe <strike_usenet@internetfreakz.be.invalid> wrote:
>>
>> "12341" is text, en "" ook :-)
> 
> Dus als ik het nu goed begrijp doet IsNumeric eigenlijk niets anders 
> dan zien of de Ascii waarden van elk teken in de 'numerieke range' 
> liggen?

Het doet precies zoals het heet: het kijkt of de string een getal is (vaak 
in een aantal presentatievormen, dus met komma, wetenschappelijke notatie, 
etc).

Een lege string is geen getal. Aangezien je NULL waarde toestaat in je 
tabel ben ik er vanuit gegaan dat NULL in dit geval geen waarde/waarde 
onbekend betekend, en heb ik "" gelijk gesteld aan NULL.

> Ik heb dit geschreven:
> 
> If TtxtUitgever.Text.Length > 0 Then dr(0)(6) = TtxtUitgever.Text
> 
> Op het eerste zicht lijkt dit ook te werken en zou het dat in theorie 
> volgens jou ook moeten doen? Of hoe zou ik het alsnog beter kunnen 
> formuleren?

Wat mij het meest zinnige lijkt is:

- als NULL mag, en "geen waarde/onbekend" is, en ingevoerd mag worden, zou 
ik "" als NULL behandelen, dus als de lengte 0 is (of de string is gelijk 
aan "") zou ik NULL in de database stoppen. Nu doe je niets. Wat neerkomt 
op: de gebruiker wist de waarde 5 uit een veld, en verhip, de volgende 
keer is die waarde terug.

Als ""/NULL *niet* ingevoerd mag worden door de gebruiker, dan moet je 
natuurlijk dat afvangen.

- Als de string een lengte heeft, dan moet je controleren of het een 
geldige waarde is, dus: is het een getal *en* valt het getal binnen het 
toegestane bereik. Zoniet zou je weer naar de gebruiker moeten klagen dat 
een ongeldige waarde is ingegeven. Sommige UI libraries maken het mogelijk 
om in, b.v. een invoerveld, al beperkingen op te leggen, b.v. je mag 1 tot 
5 cijfers invoeren en verder niks. Of als je "leeg" toestaat: je mag 0 tot 
5 cijfers invoeren en verder niks.



-- 
John Bokma
                 Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Ervaren Perl / Java programmeur beschikbaar:  http://castleamber.com/
Tevreden opdrachtgevers:     http://castleamber.com/testimonials.html
Technical Details
Message-ID: <Xns97C3843F219D8castleamber@130.133.1.4>
Path: arc1-ca.pugleaf.net!g2news2.google.com!news1.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
References: <mn.70ea7d65b632223d.48459@internetfreakz.be.invalid> <4466d12a$0$31656$e4fe514c@news.xs4all.nl> <mn.72987d655341e791.48459@internetfreakz.be.invalid> <Xns97C32C1F380FDcastleamber@130.133.1.4> <mn.72c57d65245bb296.48459@internetfreakz.be.invalid>

Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,1065910732a62429
X-Google-Attributes: gidfcea4,public
X-Google-Language: DUTCH,ASCII-7-bit
Path: arc1-ca.pugleaf.net!g2news2.google.com!news1.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: John Bokma <john@castleamber.com>
Newsgroups: be.comp.programming
Subject: Re: null waarden in datatable
Date: 14 May 2006 18:00:03 GMT
Organization: Castle Amber - software development
Lines: 52
Message-ID: <Xns97C3843F219D8castleamber@130.133.1.4>
References: <mn.70ea7d65b632223d.48459@internetfreakz.be.invalid> <4466d12a$0$31656$e4fe514c@news.xs4all.nl> <mn.72987d655341e791.48459@internetfreakz.be.invalid> <Xns97C32C1F380FDcastleamber@130.133.1.4> <mn.72c57d65245bb296.48459@internetfreakz.be.invalid>
X-Trace: individual.net 2NhLZRJ871pVawvk+xWU2gJ/z8WKED2iZkusUcWUVFmWSRwGIT
User-Agent: Xnews/2005.10.18
X-Face: $7h&5K*ZL9*ZQ\6Hco2"V?1dD*C<ab^>zlws[S%i0b,@gKk|[,)Y-<hk143{.Ov"x{({zo( l,N\m`-_^nJfVQdEyt+-uAP^7WG]5mHj9&::7X-qK;Yv;xmRvNWQR"_igw+cr5WMj;6:zlj<R80Ei@ $gGWq&*{FL*kC*a