PDA

View Full Version : متوجه شدن خالی بودن یکی فیلد



VisualStudio
یک شنبه 14 مرداد 1386, 01:25 صبح
من از کجا بفهمم که یک پرسجو که روی یک جدول انجام دادم حاصل اون هیچ سطری نیست
و از کجا بفهمم که آیا در فلان فیلد سطری وجود داه یا نه اگر نه یک اتفاق خاصی بیفتد

odiseh
یک شنبه 14 مرداد 1386, 08:26 صبح
یه DataReader وصل کن به نتیجه دستور ExecuteReader
بعدش با این دستور کنترل کن که DataReader رکوردی دره یا خیر::
If dr.HasRows then
---
else
---
End If

اگه میخوای کنترل کنی که فلان فیلد Null هستش یا نه باید بنویسی::
If IsDbNull(dr.Item(0)) Then
---
Else
---
End If

VisualStudio
یک شنبه 14 مرداد 1386, 11:53 صبح
من از کد شما استفاده کردم ولی این خصا را می ده

No data exists for the row/column.
این هم کد

Dim DReader3 As OleDbDataReader
Dim cmd3 AsNew OleDbCommand
cmd3.CommandType = CommandType.Text
cmd3.CommandText = "SELECT * FROM `UserData`"
cmd3.Connection = OleDbConn
DReader3 = cmd3.ExecuteReader
If IsDBNull(DReader3.Item(0)) Then
CFC = True
EndIf

choobin84
یک شنبه 14 مرداد 1386, 12:18 عصر
من از کجا بفهمم که یک پرسجو که روی یک جدول انجام دادم حاصل اون هیچ سطری نیست
و از کجا بفهمم که آیا در فلان فیلد سطری وجود داه یا نه اگر نه یک اتفاق خاصی بیفتد
می تونید یک پرسش درست کنید و تعداد رکوردهایش را بشمارید.


select count(*) from table where code='1'

پویا
یک شنبه 14 مرداد 1386, 12:33 عصر
اول از hasRows استفاده کن بعد مقدارشو چک کن

saeed_rezaei
یک شنبه 14 مرداد 1386, 22:41 عصر
اصلا این کدهایی که نوشتی مقداری رو بر می گردونن یا نه؟
اگه جواب مثبته تقریب چند تا رکورد رو بر می گردونه؟

choobin84
دوشنبه 15 مرداد 1386, 06:57 صبح
اصلا این کدهایی که نوشتی مقداری رو بر می گردونن یا نه؟
اگه جواب مثبته تقریب چند تا رکورد رو بر می گردونه؟

کدوم کد؟

اگر رکوردهای برگشتی رو بشماریم که دیگه تقریب می خاد.

VisualStudio
دوشنبه 15 مرداد 1386, 13:28 عصر
دوستان من بعد از کلی کلنجار مشکل را راه حل را پیدا کردم این جا قرار می دوم تا بقیه دوستان هم استفاده کنند


Dim Col AsInteger
Dim cmd3 AsNew OleDbCommand
cmd3.CommandType = CommandType.Text
cmd3.CommandText = "SELECT COUNT(`FeildName`) FROM `Tabel1` WHERE `FeildName`= 'SomeThing'"
cmd3.Connection = OleDbConn
Col = cmd3.ExecuteScalar
If Col = 0 Then
...
EndIf