1 ضمیمه
راهنمایی در برنامه دفترچه تلفن
سلام
نماز روزه هاتون قبول.
من یه دیتابیس ساختم و یک جدول شامل نام،نام خانوادگی و تلفن بعد دیتابیس رو به برنامه متصل کردم.
الآن میخام با جستجو بر اساس نام یا فامیل شماره از دینابیس خوانده و به کاربر نمایش داده بشه.
1.کدهای مربوط به دکمه جستجو رو بلد نیستم.
2.یه مشکل دیگه اینکه وقتی برنامه رو اجرا میکنم مشخصات وارد شده دیتابیس رو نشون میده!(تصویر).
ضمیمه 90796
نام دیتابیس Tel و نام جدول Table_Tel هست.
تشکر
نقل قول: راهنمایی در برنامه دفترچه تلفن
بانک اطلاعاتی sql استفاده می کنی یا اکسس.
من با sql می نویسم
sqlcommand com=new sqlcommand("select * from tabele_tel where name='"+txtname.text+"';
sqldatareader dr;
con.open();
dr=com.excutereader();
dr.read();
string num=dr["number"];
con.close();
messagebox.show("Number="+num);
تو اولش هم باید بنویسی using system.data.sqlclient;
اگر هم بانکت اکسس بود به جای sql تو کل برنامه oledb بنویس
نقل قول: راهنمایی در برنامه دفترچه تلفن
شرمنده من به جای دابل کوتیشن،تک کوتیشن گذاشتم.خودت درستش کن
نقل قول: راهنمایی در برنامه دفترچه تلفن
متاسفانه به تمام کدها و دستورات خطا میداد.
این برنامه من
هر کاری کردم نشد دیتابیس رو کپی کنم در برنامه چرا؟امکان جابه جایی وجود نداره؟
نقل قول: راهنمایی در برنامه دفترچه تلفن
سلام، احتمالا بخاطر اینه که دیتابیس در حال اجرا هست. شما روی دیتابیس راست کلیک کن و اونو detach کن. بعدش دیتابیس رو کپی کن. کد بالا درست هست ولی من خودم همیشه از دیتاتیبل برای این کارها استفاده میکنم. اگر خواستی بگو تا نمونه کد واست بزارم.
نقل قول: راهنمایی در برنامه دفترچه تلفن
اگر قرار بدید ممنون میشم و اینکه منظور از دیتا تیبل چی هست؟
نقل قول: راهنمایی در برنامه دفترچه تلفن
دیتاتیبل ( datatable ) یه جدول خام هست. وقتی یه جستجو انجام میدی و رکورد (ها ) رو پیدا میکنی در واقع رکوردهای شما یه جدول هستن. حالا نتیجه جستجو رو میریزی داخل دیتاتیبل.
توضیحات : یک تکست باکس برای وارد کردن نام بذارید (من اسمش رو گذاشتم txtinput ) و 3 تا تکست باکس هم خروجی رو نشون میدن ( اسمشون txtname و txtfamily و txtphone گذاشتم).اگر جستجوی شما فقط یک رکورد باشه (وقتی بر اساس فیلد غیر کلید جستجو میکنید احتمالش زیاده که جستجو بیش از یک رکورد پیدا کنه) پس دیتاتیبل شما هم فقط یک رکورد خواهد داشت( یعنی یک سطر و سه ستون خواهی داشت، توجه کن که در سی شارپ مقادیر از صفر شروع میشن). ستون صفر میشه نام، ستون 1 میشه فامیلی و ستون 2 میشه تلفن( البته این ترتیب به شرطیه که در جدولت اول نام باشه بعد فامیلی و بعد تلفن)
اما کد :
SqlConnection con = new SqlConnection("Data Source = (local);Initial Catalog = Tel; Integrated Security = True;");
SqlDataAdapter da = new SqlDataAdapter("select * from Table_Tel where name = '" + txtinput.Text +"'",con);
DataTable dt = new DataTable();
da.Fill(dt);
if(dt.Rows.Count != 0)
{
txtname.Text = dt.Rows[0][0].Tostring();
txtfamily.Text = dt.Rows[0][1].Tostring();
txtphone.Text = dt.Rows[0][2].Tostring();
}
else
MessageBox.Show("not found");
کدها رو حتما خودت تایپ کن. از کپی و paste متنفر باش.
موفق باشی دوست من.
1 ضمیمه
نقل قول: راهنمایی در برنامه دفترچه تلفن
ممنون از راهنمایی هاتون.
کدها چند خطا داشتند برطرف کردم اما اینها رو دیگه نتونستم کاری کنم به to.string ها خطا میده؟ضمیمه 90832
نقل قول: راهنمایی در برنامه دفترچه تلفن
نقل قول:
نوشته شده توسط
پیام حیاتی
ممنون از راهنمایی هاتون.
کدها چند خطا داشتند برطرف کردم اما اینها رو دیگه نتونستم کاری کنم به to.string ها خطا میده؟
ضمیمه 90832
سی شارپ به حروف بزرگ و کوچیک حساسه.ToString
نقل قول: راهنمایی در برنامه دفترچه تلفن
متاسفانه شما اصلا به حرف های من توجه نمیکنید. من وقتی میگم کپی و paste کردن دشمن یه برنامه نویس تازه کاره حتما یه چیزی میدونم که این حرفو میزنم. همونطور که دوستمون گفتن بین ToString و Tostring تفاوت هست. (حرف s در اولی با حروف بزرگ و در دومی با حروف کوچک نوشته شده و سی شارپ بین حروف بزرگ و کوچک تفاوت قائل میشه). شما tostring رو پاک کن و خودت تایپ کن.
نقل قول: راهنمایی در برنامه دفترچه تلفن
نقل قول:
نوشته شده توسط
mohammaddou
متاسفانه شما اصلا به حرف های من توجه نمیکنید. من وقتی میگم کپی و paste کردن دشمن یه برنامه نویس تازه کاره حتما یه چیزی میدونم که این حرفو میزنم. همونطور که دوستمون گفتن بین ToString و Tostring تفاوت هست. (حرف s در اولی با حروف بزرگ و در دومی با حروف کوچک نوشته شده و سی شارپ بین حروف بزرگ و کوچک تفاوت قائل میشه). شما tostring رو پاک کن و خودت تایپ کن.
بله آقا محمد حق با شماست به خاطر تعجیل در رسیدن به نتیجه کپی کردم ببخشید.
برنامه درست شد واقعا" ممنونم.