منتخب بازارچه

خواندن یک فیلد از یک جدول در یک دیتابیس

mosi-cowboy

کاربر تازه وارد
تاریخ عضویت
29 سپتامبر 2011
نوشته‌ها
68
لایک‌ها
5
محل سکونت
همدان-> ملایر
سلام دوستان من یه مدتیه دنبال این سوالم حوصلمو سر برده از بس به ارور میخورم.
من میخوام توی C# یک فیلد از یک جدول رو بخونم(مثلا یوزرنیم ) و توی یک label نمایش بدم.
این خوندن هیچ شرطی نداره چون این جدول فقط یک سطر داره !! مثل نگه داری اطلاعات ادمین (لازم شده جدولش جدا باشه)
ینی یک ستونش رو بخونم حله.
من هرجور دستور select میزنم این رو نمایش میده :
System.Data.DataSet
با LinQ یا Ado یا لامبدا باشه موردی نداره !!!
با تشکر
 

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net
اگه درست متوجه شدم که (متوجه شدم ) شما میخوای دسترسی به شکل سطر و ستون داشته باشی و برای این کار می تونین از دیتاتیبل استفاده کنید،
PHP:
System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter("select * from table;", "connectionString...");
            System.Data.DataTable table = new DataTable();
            adapter.Fill(table);
و برای دسترسی به این شکل میشه استفاده کرد :
کد:
MessageBox.Show(table.Rows[rowindex][columnIndex].ToString());
 

mosi-cowboy

کاربر تازه وارد
تاریخ عضویت
29 سپتامبر 2011
نوشته‌ها
68
لایک‌ها
5
محل سکونت
همدان-> ملایر
اگه درست متوجه شدم که (متوجه شدم ) شما میخوای دسترسی به شکل سطر و ستون داشته باشی و برای این کار می تونین از دیتاتیبل استفاده کنید،
PHP:
System.Data.SqlClient.SqlDataAdapter adapter = new System.Data.SqlClient.SqlDataAdapter("select * from table;", "connectionString...");
            System.Data.DataTable table = new DataTable();
            adapter.Fill(table);
و برای دسترسی به این شکل میشه استفاده کرد :
کد:
MessageBox.Show(table.Rows[rowindex][columnIndex].ToString());
خدا خیرت بده حل شد ... (البته فقط خوند، زوق زده شدم گفتم تشکر کنم فعلا بقیه مراحلو انجام ندادم)
من یه راه واسه خوندنش پیدا کرده بودم: با LinQ ، بعد با foreach آیتم های داخلشو میخوندم، ولی چون بعد از خوندن میخوام آپدیت کنم با استورپروسیجر، میاد یه سطر دیگه به دیتابیس اضافه میکنه. مطمئنم که استورپروسیجر update هست، ولی نمیدونم چرا میاد اضافه میکنه.
 

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net
خدا خیرت بده حل شد ... (البته فقط خوند، زوق زده شدم گفتم تشکر کنم فعلا بقیه مراحلو انجام ندادم)
من یه راه واسه خوندنش پیدا کرده بودم: با LinQ ، بعد با foreach آیتم های داخلشو میخوندم، ولی چون بعد از خوندن میخوام آپدیت کنم با استورپروسیجر، میاد یه سطر دیگه به دیتابیس اضافه میکنه. مطمئنم که استورپروسیجر update هست، ولی نمیدونم چرا میاد اضافه میکنه.
با یه کوئری ساده می تونی آپدیتش کنی دیگه ، اینا که گفتی یعنی چی :general404:
روش خودتو انجام بده ، اگه مشکلی بود واسه اپدیتش هم هم فکری می کنیم
 

mosi-cowboy

کاربر تازه وارد
تاریخ عضویت
29 سپتامبر 2011
نوشته‌ها
68
لایک‌ها
5
محل سکونت
همدان-> ملایر
با یه کوئری ساده می تونی آپدیتش کنی دیگه ، اینا که گفتی یعنی چی :general404:
روش خودتو انجام بده ، اگه مشکلی بود واسه اپدیتش هم هم فکری می کنیم
این روشی که گفتمو کلا پاک کردم مال شما رو نوشتم ... خیلی کمتر و راحتتر شد واقعا مرسی ...
راستش من کلا رابطم با کوئری زدن خوب نیس، با LinQ کار میکنم و فقط از استور پروسیجر استفاده میکنم ... :D

منتها بازم مشکل آپدیت کردنه هستش ... 4 تا استور پروسیجر واسه آپدیت نوشتم، 3 تاش درست کار میکنه ولی یکیش نمیدونم چرا علاوه بر اینکه آپدیت میکنه میاد یه فیلد دیگه هم اضافه میکنه !!!!!!!!! توی کد C#ش چیز خاصی ننوشتم ... مثه بقیس ...


یه سوال خارج از دیتابیس :
توی این برنامه که نوشتم یه فرم login دارم میخوام وقتی لاگین شد و فرم اصلی باز شد اون فرم لاگین بسته بشه.
this.close() که میذارم کلا میبنده!
this.Hide() هم میذارم وقتی برنامه رو کلا میبندم دوباره باز میکنم ارور فایل exe میده !
باید چیکار کنم ؟؟
 
Last edited:

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net
این روشی که گفتمو کلا پاک کردم مال شما رو نوشتم ... خیلی کمتر و راحتتر شد واقعا مرسی ...
راستش من کلا رابطم با کوئری زدن خوب نیس، با LinQ کار میکنم و فقط از استور پروسیجر استفاده میکنم ... :D

منتها بازم مشکل آپدیت کردنه هستش ... 4 تا استور پروسیجر واسه آپدیت نوشتم، 3 تاش درست کار میکنه ولی یکیش نمیدونم چرا علاوه بر اینکه آپدیت میکنه میاد یه فیلد دیگه هم اضافه میکنه !!!!!!!!! توی کد C#ش چیز خاصی ننوشتم ... مثه بقیس ...


یه سوال خارج از دیتابیس :
توی این برنامه که نوشتم یه فرم login دارم میخوام وقتی لاگین شد و فرم اصلی باز شد اون فرم لاگین بسته بشه.
this.close() که میذارم کلا میبنده!
this.Hide() هم میذارم وقتی برنامه رو کلا میبندم دوباره باز میکنم ارور فایل exe میده !
باید چیکار کنم ؟؟
خوشحالم حل شده ، اما در مورد بستن فرم من به این شکل استفاده می کنم :
تو کد خروج این کد رو می نویسم :
کد:
exitcode = 1;
                        this.Close();
بعد تو قسمت رویداد FormClosed از این کد استفاده می کنم :
PHP:
if (exitcode == 1)
            {
                this.Hide();
                option op = new option();
                op.ShowDialog();


            }
البته چند جا دیدم که واسه خروج کد رو به این شکل نوشتند

کد:
this.Hide();
  option op = new option();
  op.ShowDialog();
پی نوشت 1: exitcode یک متغیر سراسری هست که تو فرم تعریف کردم . برای تشخیص اینکه
 
Last edited:

mosi-cowboy

کاربر تازه وارد
تاریخ عضویت
29 سپتامبر 2011
نوشته‌ها
68
لایک‌ها
5
محل سکونت
همدان-> ملایر
سلام در ادامه این کمک ها ممنون میشم این سوالم رو هم جواب بدید !
با C# میخوام تاریخ شمسی و ساعت رو در دیتابیس ذخیره کنم و هم اینکه بتونم از یک بازه زمانی تا یک بازه ی زمانی دیگه توی Grid view نمایش بدم !!!
چگونگی بدست آوردن تاریخ شمسی رو کامل بلدم !

حالا مشکل من اینه که اینارو چجوری از کاربر بگیرم و توی دیتا بیس ذخیره کنم که بعدا بتونم مقایسه کنم که از یک بازه تا یک بازه ی دیگه بهم نمایش بده !!

مثلا واسه روز یه فیلد جدا و ماه یه فیلد جدا و سال هم یک فیلد جدا ؟؟ که جدا جدا شرط بذارم ؟!؟

تاریخ پیش فرض ویژوال استودیو (میلادی) خودش با DateTime.now سر هم هست، ولی واسه تاریخ شمسی باید خودمون سرهمش کنیم ...
 

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net
PHP:
 System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
            textBox1.Text = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now) + " ساعت "
                + pc.GetHour(DateTime.Now) + ":" + pc.GetMinute(DateTime.Now) + ":" + pc.GetSecond(DateTime.Now);
در مورد تقویم شمسی که از کلاس PersianCalendar به صورت بالا استفاده می کنم
 

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net

ayma

کاربر فعال بخش پاتوق
کاربر فعال
تاریخ عضویت
3 دسامبر 2011
نوشته‌ها
940
لایک‌ها
3,211
سن
31
محل سکونت
VB6 & .Net
به کمک time span هم راحت می تونی تاریخ ها و زمان و دقایق رو کم کنی ، حتما" در مورد این کلاس و مثال هاش سرچ کن یه نمونه اش اینجاس :
کد:
    DateTime startTime = Convert.ToDateTime("7:00 AM");
    DateTime endtime = Convert.ToDateTime("2:00 PM");
    TimeSpan duration = startTime - endtime;
اگر تاریخ رو جدا جدا هم از کاربر گرفتی مشکلی نداره ؛ استدلالم اینکه تو خیلی از نرم افزارهای و سایت های بزرگ دیدم که مثلا" تاریخ تولد رو جدا جدا با کامبوکس وارد می کنن به این شکل / سال / ماه / روز
 
بالا