/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Bare nysgerrig
Fra : Jens Vestergaard


Dato : 17-03-03 10:50

Hejsa,
Jeg ved godt, at man ikke nødvendigvis kan lede efter logik i denne verden,
men alligevel:

Ren nysgerrighed:
Er der en 'logisk' forklaring på, at Access-databaser som udgangspunkt
initialiserer et tekstfelt til Null og ikke bare til tom? Og i samme
boldgade: Er der en 'logisk' forklaring på, at property'en TilladNullængde
initialiseres til Nej?

Begge steder ville jeg finde 'det omvendte' mest hensigtsmæssigt... Oder?

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp



 
 
Dcasso (18-03-2003)
Kommentar
Fra : Dcasso


Dato : 18-03-03 16:25

Tja logisk og logisk. Her får du min vurdering :)

Jeg tror begrundelsen for at null ikke tillades, er at man ved at
indsætte et null jo reelt laver et tomrum hul i databasen. Null er jo
noget man skal undgå. Så synes den er fair at man siger man ikke bør
kunne indsætte det.

Det næste med at den lader et tekstfelt være null ved oprette er jo,
at hvis vi stadig forudsætter at null er noget vi skal undgå, så må
det jo også være sådan at den eneste reelle situation vi bør benytte
null-værdien i er ved oprettelsen af en felt.
Årsagen til den skal bruges her er jo at det såkaldte tomme felt, jo
faktisk indeholder reel information, det gør null ikke, null's værdi
er jo bare at det er manglende eller sagt med andre ord, et stort
spørgsmål.

Derudover bør man jo generelt undgå null, jeg mener at huske at ved
visse sql-sætninger, kan null være ødelæggende for forespørgslens
resultat, mens null ikke er det.

Ved ikke om du kan følge mig :)
Dennis


On Mon, 17 Mar 2003 10:49:48 +0100, "Jens Vestergaard" <j@railsoft.dk>
wrote:

>Hejsa,
>Jeg ved godt, at man ikke nødvendigvis kan lede efter logik i denne verden,
>men alligevel:
>
>Ren nysgerrighed:
>Er der en 'logisk' forklaring på, at Access-databaser som udgangspunkt
>initialiserer et tekstfelt til Null og ikke bare til tom? Og i samme
>boldgade: Er der en 'logisk' forklaring på, at property'en TilladNullængde
>initialiseres til Nej?
>
>Begge steder ville jeg finde 'det omvendte' mest hensigtsmæssigt... Oder?


Jens Vestergaard (18-03-2003)
Kommentar
Fra : Jens Vestergaard


Dato : 18-03-03 16:45

"Dcasso" <ikke@oplyst_pga_spam.dk> skrev i en meddelelse
news:d2ee7vkgekh4d7erg36ds1j0tdero938nr@4ax.com...
> Tja logisk og logisk. Her får du min vurdering :)
>
> Jeg tror begrundelsen for at null ikke tillades, er at man ved at
> indsætte et null jo reelt laver et tomrum hul i databasen. Null er jo
> noget man skal undgå. Så synes den er fair at man siger man ikke bør
> kunne indsætte det.

Men det holder jo ikke.

Punkt 1: Indeholdet er jo netop Null, når feltet initialiseres.

Punkt 2: Egenskaben hedder jo ikke TilladNulllængde, men TilladNullængde
(ikke 3, men 2 l'er) - det er med andre ikke Null, men ikke kan indsætte,
men bare en tom streng ("")

Og det kan jeg ikke se, hvorfor man som standard ikke skulle kunne. Jeg
retter konsekvent til Ja, hver gang jeg opretter et tekstfelt.

rs("myField") = myString
giver fejl, hvis feltet er ny-initaliseret til Null og myString tilfældigvis
er "", hvilket betyder, at man er nødt til at lave ekstra error-handeling
eller teste for "" i hver eneste streng. Det synes jeg ikke er logisk....

Men det er nok stadig bare mig....

mvh

--
mvh
Jens Vestergaard (mailadr i dette indlæg er ikke gyldig!)
www.railsoft.dk
Døgnets jernbanenyheder: www.railsoft.dk/medier.asp



Tomas Christiansen (18-03-2003)
Kommentar
Fra : Tomas Christiansen


Dato : 18-03-03 22:46

Jens Vestergaard skrev:
> Ren nysgerrighed:
> Er der en 'logisk' forklaring på, at Access-databaser som udgangspunkt
> initialiserer et tekstfelt til Null og ikke bare til tom?

Jeg kender ikke Access godt, og vil derfor forholde mig helt generelt
til spørgsmålet.

Jeg synes at det er genialt, at man har mulighed for at markere, at et
felt er 'uinitialiseret', 'ikke har relevans' eller ganske enkelt
'mangler en værdi'.
Det kan man med Null.

Jeg synes derimod at det er temmelig ugenialt, at mange databasesystemer
mener at 'den tomme streng' skal opfattes som Null. For mig er der en
klar distinktion mellem de to forskellige værdier.

Man kan sammenligne med VB's datatype Variant, som får værdien Empty fra
starten (= ikke initialiseret), men som kan tildeles værdien Null (=
indeholder med fuldt overlæg ingen værdi) eller en reel værdi. I
databaser må man slå brugen af Empty og Null sammen til én, nemlig Null.

-------
Tomas


Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408518
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste