Article View: alt.pl.comp.lang.csharp
Article #889Re: Jak sprawdzic czy pole w dataSet...
From: Marek Janaszewski USUNTO. z adre...
Date: Fri, 09 Apr 2004 12:51
Date: Fri, 09 Apr 2004 12:51
42 lines
2316 bytes
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-mailReferences:
<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