PDA

View Full Version : جستجوی یک ردیف از داخل dataset



safasoft
دوشنبه 15 مرداد 1386, 12:23 عصر
با سلام
من می خواهم یک رکورد خاصی را از داخل dataset ام پیدا کرده و یکی از ستون های اون را update کنم . البته الان این کار را به روش زیر انجام دادم

Dim rowasli As DataRow
ForEach rowasli In HesabrasDataSet1.karbargasli.Rows
Dim codehesab1 AsString = HesabrasDataSet1.karbargasli.Rows(rown).Item("codehesab")
If codehesab1 = MainForm.codehesab Then

HesabrasDataSet1.karbargasli.Rows(rown).Item("atf") = (CInt(lastatf) + CInt(tedatf)).ToString
EndIf

rown = rown + 1
Next

اما در این کد از یک حلقه استفاده کردم تا مکان اون رکورد را پیدا کنم . می خوام بدون حلقه این کار را بکنم .
سپاسگذارم

ghafoori
دوشنبه 15 مرداد 1386, 13:19 عصر
دوست عزیز می توانی از متد select استفاده کنی مثل این کد


Dim rowasli() As DataRow
rowasli=HesabrasDataSet1.karbargasli.select("codehesab="+MainForm.codehesab)

از دیتاویو و bindingsource هم می توانی استفاده کنی

VisualStudio
دوشنبه 15 مرداد 1386, 13:19 عصر
شما برای این کار می تونید از دستورات SQL استفاده کنید به فرض


dbCom.CommandText = "UPDATE [tablename] SET [imagefield]=@imagefield WHERE ([keyfield]=@keyfield)"

safasoft
سه شنبه 16 مرداد 1386, 09:55 صبح
سلام.
ghafoori این کد

Dim rowasli() As DataRow
rowasli=HesabrasDataSet1.karbargasli.select("codehesab="+MainForm.codehesab)
خطا داره . تازه اگه هم اصلاح بشه این موقعیت اون رکورد را بر میگردانه .
چطوری بعضی ستون ها ی اون موقعیت را برگردونم
سپاسگذارم

ghafoori
سه شنبه 16 مرداد 1386, 12:00 عصر
چه خطا یی می دهد

تازه اگه هم اصلاح بشه این موقعیت اون رکورد را بر میگردانه
این متد ارایه ای از دیتارو را به شما می دهد بعد شما ان را تغییر دهید یک مثال هم برای شما می گدارم
این کد را هم اصلاح کنید

Dim rowasli() As DataRow
rowasli=HesabrasDataSet1.karbargasli.select("codeh esab='"+MainForm.codehesab+"'"

10085

safasoft
دوشنبه 22 مرداد 1386, 10:12 صبح
سلام
ببخشید من چند روزی کاری برایم پیش آمد وجواب شما را دیر گرفتم.
از کد خوبتان واقعا سپاسگذارم
بسیار کمکم کرد