leeg veld is niet leeg...???

Status
Niet open voor verdere reacties.

JEPEDEWE

Terugkerende gebruiker
Lid geworden
14 jun 2006
Berichten
1.680
Hallo
volgende doet zich voor:

? isnull(Pat_RRN)
Onwaar
? pat_RRN+"x"
x

wat staat er dan effectief in Pat_RRN.... ik zie in elk geval niets in dit veld staan

bedankt
JP
 
Dan staat er vast een spatie in of hij is niet "nullable".
 
bedankt voor je antwoord, maar... moest er een spatie in staan dan kreeg ik toch:
x
ipv
x

wat bedoel je met "nullable"?
Hoe los ik dit op?

JP
 
Ed heeft geen verstand van databases, dus zijn antwoord is niet echt zinvol. Een veld in Access kan verschillende 'vormen' van leeg zijn, en dat maakt het dus een beetje vervelend als je het veld verkeerd instelt. Je zou verwachten dat deze twee formules:
PHP:
If IsNull([Datumveld]) Then Msgbox "Veld is leeg"
en
PHP:
If [Datumveld]) Is Null Then Msgbox "Veld is leeg"
hetzelfde opleveren, maar dat is dus niet zo. Om te weten wat je precies gedaan hebt, moet ik dus weten om welk veld het gaat. Ik neem aan dat het nog te herleiden is in een db die ik heb?
 
Je kan het niet laten om te trappen hè.
Ik dacht dat we daar inmiddels wel overheen waren.
Wat een zielig mannetje ben je toch.
 
Knul, je hébt toch geen verstand van databases? Dit is een typisch database probleem dat je in Excel niet zal tegenkomen.
 
Hoi,

Leeg voor een database wil in feite zeggen: we weten niet wat erin staat. In een tekstveld kan er een lege string staan: "" (open de aanhalingstekens: wat nu volgt is tekst, en sluit de aanhalingstekens onmiddellijk : er was geen tekst). Dit is de string tegenhanger voor de 0 bij cijfers. En als er een lege tekststring instaat zien we die weliswaar niet staan, maar we weten wel wat erin staat. Dus het veld is niet leeg.
 
Beste beiden..
Ik doe liever niet mee in dit spelletje.. wou alleen een vraagje stellen...

@ Michel: inderdaad, beide leveren hetzelfde resultaat op.
het betreft niet direct een veld vanuit een tabel maar een entryfield op een form, dat, als jet het ziet staan, effectief "leeg" is

bedankt beide voor de tijd

JP
 
JP, als je te maken hebt met een veld dat eventueel een lege string kan bevatten kan je gebruik maken van de volgende test om zowel de echt lege velden als deze met een lege string te ondervangen: If len(NZ([Veldnaam], "") = 0 then … , of IIf(len(NZ([Veldnaam];"")) = 0;A;B). De NZ functie vervangt een lege waarde met de waarde in het tweede argument .
 
hey NoellaG...
je voorstel met de LEN functiue werkt... ik vraag of de 0 is en doe dan mijn if then gedoe
werkt..
bedankt
JP
 
Ik zou toch een andere check doen, omdat je met Nz alleen maar kijkt of er iets in het veld staat of niet. Daarmee vang je niet af of de input ook inderdaad een datum is. Probeer deze varianten maar uit:
Code:
    If Not IsDate(Me.Tekst2.Value) Then MsgBox "Dit is geen datum"
    If Len(Nz(Me.Tekst4, "")) = 0 Then MsgBox "Dit is ook geen datum"
En vul dan in de twee tekstvakken (testje uiteraard) maar eerst een spatie, en dan het getal 90 in als voorbeeld.
 
Heren (jullie weten wie ik bedoel) zullen we het respectvol houden en haantjesgedrag achterwege laten. Gerespecteerde helpers zoals jullie helpen, zoals ik jullie ken, met de beste intenties.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan