PDA

View Full Version : سوال: دسترسی به آخرین سطر پایگاه داده



asemann
پنج شنبه 26 آذر 1388, 00:27 صبح
من تازه برنامه نویسی c# شروع کردم برای اینکه به سطر اول جدول دسترسی داشته باشم از کد زیر استفاده می کنم

SqlConnection objconnection = new SqlConnection("Data Source=Localhost;Initial Catalog=sandogh; Integrated Security=True");
SqlDataAdapter objdataadaptor = new SqlDataAdapter("Select * from table", objconnection);
DataSet objdataset = new DataSet();
objdataadaptor.Fill(objdataset, "kod");
DataRow dr = objdataset.Tables["table"].Rows[0];
textBox1.Text = dr["fild_kod"].ToString();

حالا اگه بخوام به سطر آخر یا سطرهای دیگه دسترسی داشته باشم باید چیکار کنم؟

hakelberfin
پنج شنبه 26 آذر 1388, 00:44 صبح
اگه اطلاعاتت در DataGrid اند
این دستور تعداد سطرهای DataGrid رو میده .


this.dataGridViewName.Rows.Count;

میتونی از اون برای دسترسی به اخرین سطر استفاده کنی


this.dataGridViewIllDoc.Rows[this.dataGridViewIllDoc.Rows.Count - 1];

در کد خودتم میتونی اینجوری به اخرین سطر دسترسی داشته باشی


DataRow dr = objdataset.Tables["table"].Rows[objdataset.Tables["table"].Rows.Count];

asemann
پنج شنبه 26 آذر 1388, 01:34 صبح
مرسی
چه جوری میشه با این دستورها به سطرخاصی از جدول دسترسی پیدا کنیم.مثلا به سطری که فیلد id آن از همه بزرگتر باشه؟

صادق صدقی
پنج شنبه 26 آذر 1388, 02:54 صبح
مرسی
چه جوری میشه با این دستورها به سطرخاصی از جدول دسترسی پیدا کنیم.مثلا به سطری که فیلد id آن از همه بزرگتر باشه؟


سلام
می تونی از کد sql هم استفاده کنی!!!!
به نظر من از همین اول سعی کن با کد پیش بری
مدیریت بهتره و.....
برای انتخاب اولین رکورد دیتا بیست:
Select top(1) * from tblName
وبرای انتخاب آخرین
select top(1) *from tblname order by Filedname Desc
موفق باشی
یا علی


-------------------------------------
برنامه نویسی دستگاه های کارت خوان ما فر

http://barnamenevis.org/forum/showthread.php?t=189038

alinaghiha
پنج شنبه 26 آذر 1388, 08:28 صبح
اگه بخوايم سطر n ام رو بخونيم بايد چيكار كنيم

ممنون

sky_in_iran
پنج شنبه 26 آذر 1388, 09:07 صبح
سلام دوستان عزيز
همونجور كه استاد صدقي فرمودند شما بهتره از كد sql استفاده كنيد براي بدست آوردن سطر nام شما



Select * from tblName where n= " چيزي كه ميخواهيد"

asefy2008
پنج شنبه 26 آذر 1388, 10:16 صبح
سلام دوست من شما کتابی در مورد پایگاه داده مطالعه کردی؟
اگر این کار رو نکردی حتما این کار رو انجام بده چون اول باید اصول طراحی پایگاه رو یاد بگیری بعد خودت می بینی به بیشتر این کار را نیازی نداری (مثلا پیدا کردن آخرین سطر و...) البته این نظر شخصی من هست شاید حرفه ای ها نظر دیگه ای داشته باشن.
موفق باشی.

صادق صدقی
پنج شنبه 26 آذر 1388, 11:56 صبح
اگه بخوايم سطر n ام رو بخونيم بايد چيكار كنيم

ممنون


سلام
برای پیدا کردن سطر n ام باید بنویسی

sqlCommand cmd=new SqlCommand("Select Top('"+convert.toInt32(txtId.text)+"') from tblName)"

:قلب:



-----------------------------------------------------------------------------
برنامه نویسی دستگاه کارت خوان کارتهای MiFare (http://barnamenevis.org/forum/showthread.php?t=189038) ‏

sky_in_iran
جمعه 27 آذر 1388, 12:35 عصر
استاد صدقي روشتون اشتباه براي پيدا كردن nام عنصر اگه txtId.text برابر با 20 باشه اين كد شما 20 تاي آخر بر ميگردونه نه ركورد 20 ، براي پيدا كردن nام از where استفاده كنيد


select * from tblname where id = 20

robat7
جمعه 27 آذر 1388, 17:14 عصر
سلام دوست عزيز
با استفاده از دستور CurrencyManager مي تواني به هر ركورد مورد نظر دسترسي پيدا كني
براي توضيح بيشتر مي‌تواني به كتاب آقاي هاشميان صفحه 648 مراجعه نمايي
متاسفانه من نمي‌توانم كل كتاب را از اين طريف برايت ارسال نمايم اگر ايميلت را برايم بفرستي كتاب را برايت ارسال مي‌كنم ولي قسمت مربوطه را برايت Attach نموده ام

موفق باشي
robat7

sky_in_iran
شنبه 28 آذر 1388, 07:36 صبح
استاد robat7 از پيوستي كه گذاشتي ممنون مفيد بود اما بحث ما در زمان واكشي اطلاعات با دستورات sql هست اين روش شما درست است اما ما ميخواهيم جواب به برنامه ارسال كنيم نه اينكه تمام ركوردهارو فراخواني بكنيم و بعد به دنبال ركورد مورد نظر باشيم اين روش بهينه نيست و حافظه اضافي به خودش اختصاص مي ده . شما 2000 ركورد فراخواني مي كني كه يك ركور nام بدست بياريد ؟ البته نظر من يه نظر شخصيه فكر مي كنم اين روش خوب نيست دليلشم گفتم اما بازم از پيوستت سپاسگزارم

ramin_ramin
شنبه 28 آذر 1388, 08:15 صبح
باید از identity@@ استفاده کرد