🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: alt.pl.comp.lang.csharp
Article #889

Re: Jak sprawdzic czy pole w dataSet...

#889
From: Marek Janaszewski USUNTO. z adre...
Date: Fri, 09 Apr 2004 12:51
42 lines
2316 bytes
rozrabiak wrote:
> Witam
> Jak sprawdzic, czy pole w dataSet jest puste?
> Probuje tak:
>
> if (datas.Tables["capsch"].Rows[context[datas,
> "capsch"].Position]["Fig"] != null)
>
> if (datas.Tables["capsch"].Rows[context[datas,
> "capsch"].Position]["Fig"] != "")
>
> ale za kazdym razem kog pod ifem sie wykonuje tak jakby warunku nie
> bylo... a jestem pewien na 100%, ze tam jest pusto:)
[...]

Witam!

No bo null oznacza brak obiektu, nie pusta wartosc pola. Jest cos takiego
jak klasa DBNull

Nalezy uwazac na logike trójwartosciowa. Wedlug standardu ANSI SQL: Null !=
Null. Cokolwiek porównuje z Null odstajesz wartosc logiczna nieznana:
Unkown. Dr Codd w relacyjnym modelu baz danych postulowal aby stworzyc dwie
specjalne wartosci do oznaczenia wartosci niezainicjowanej i braku wartosci.
Dodatku taka wartosc nie moze pochodzic zakresu samych danych, np. w
przypadku liczb calkowitych niektórych ich normalnych wartosci.  Komercyjne
systemy baz danych posiadaja jedna i wlasnie jest nia Null. Nalezy przy tym
uwazac na puste stringi. Wedlug tego drugiego postulatu jest zupelnie cos
innego gdy pole jest równe null.

Znalazlem cos takiego:

   DataRow currRow =
dstKontrah.Tables["Kontrah"].Rows[grdKontrah.CurrentRowIndex];
   if (currRow.IsNull("Nazwa"))
    MessageBox.Show("Kolumna Nazwa jest pusta");


-- 
Pozdrawiam,
Marek Janaszewski
[ j_m...@gazeta.pl ]
Technical Details
Message-ID: <c566ao$2571$3@news.atman.pl>
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news1.google.com!news.glorb.com!nntp.idg.pl!wsisiz.edu.pl!news.atman.pl!not-for-mail
References: <c55s26$ech$1@news.onet.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!archiver1.google.com!news1.google.com!news.glorb.com!nntp.idg.pl!wsisiz.edu.pl!news.atman.pl!not-for-mail
From: "Marek Janaszewski \(USUN_TO. z adresu!\)" <USUN_TO...@gazeta.pl>
Newsgroups: alt.pl.comp.lang.csharp
Subject: Re: Jak sprawdzic czy pole w dataSet...
Date: Fri, 9 Apr 2004 14:51:27 +0200
Organization: ATMAN
Lines: 43
Message-ID: <c566ao$2571$3@news.atman.pl>
References: <c55s26$ech$1@news.onet.pl>
NNTP-Posting-Host: staticline702.toya.net.pl
Mime-Version: 1.0
X-Trace: news.atman.pl 1081515160 70881 217.113.228.127 (9 Apr 2004 12:52:40 GMT)
X-Complaints-To: use...@atman.pl
NNTP-Posting-Date: Fri, 9 Apr 2004 12:52:40 +0000 (UTC)
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2800.1158
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit