اگه از SqlServer2000 استفاده ميکنيد بايد از Query analyzer استفاده کنيدنقل قول:
اگه هم از Sqlserver2005 استفاده ميکنيد از طريق Sqlserver managment studio و از قسمت new query ميشه اين کارو کرد
اگه از SqlServer2000 استفاده ميکنيد بايد از Query analyzer استفاده کنيدنقل قول:
اگه هم از Sqlserver2005 استفاده ميکنيد از طريق Sqlserver managment studio و از قسمت new query ميشه اين کارو کرد
وقتی که enterprise manager رو باز کردی، روی Databases راست کلیک کن و attach رو بزن. مسیر بانک رو معلوم کن و آخرش هم ok.
سلام دوستان خسته نباشید خصوصا ultimator جان...
من یه جدولی تو دیتا بیس دارم که یه جستجویی رو توش انجام دادم می خوام اگه جستجو موفق بود فیلد id رو توی textbox بریزم و اگه نبود مثلا یه flag داشته باشم که false بگیره , یعنی اگه flag مقدار false داشته باشه به این معنیه که جستجو تو دیتا بیس ناموفق بوده و select هیچ مقداری را برنمیگرداند و اگه flag مقدار true داشته باشه به این معنیه که select حداقل یک مقدار رو برمیگردونه.
کجا باید به flag مقدار true و false رو بدم؟
ممنون میشم کمکم کنید.در ضمن برنامه به زبان c# و با sql server2000 کار می کنه.
نمونه کد:
DataTable dt = new DataTable();
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand();
adp.SelectCommand.Connection = con;adp.SelectCommand.CommandText = "SELECT ID, Family, Name FROM Table1 WHERE (Name ='" + textBox1.Text + "')";
adp.Fill(dt);
textBox2.Text = dt.Rows[0]["ID"].ToString();
dataGridView2.DataSource = dt;
سلام
میتونید با ()dt.Rows.Count تعداد سطرها رو برگردونید وچکش کنید که چنتاست
اگه بیشتر از صفر بود به flag مقدار true بدین اگه مساوی صفر بود false
سلام
من دارم رو یه برنامه دیتابیس sql server2000 با c# کار می کنم , مثلا یکی از فرمها توش یه datagrid هست که به یکی از جدولای دیتابیس وصله و یه چند تا textbox و comboBox هم هست که اطلاعات ورودی رو دریافت می کنه textbox ها و comboBox ها با خاصیت databinding>text به فیلد های دیتابیس متصلند سوال اولم اینه که می خوام وقتی یه textbox که به فیلدی از جدول که از نوع int هست متصل هست موقع دریافت اطلاعات می تونه فقط کاراکتر های عددی((0..9 رو بگیره و اگه یه کاراکتر حرفی وارد کنیم textbox نگیره یعنی انگار چیزی وارد نکرده باشیم و فقط ورودی int بگیره سوال دومم هم اینه که comboBox ها که خاصیت (Collection)item> آن ها با چند تا فیلد set شده میخوام وقتی حرفه اول یه فیلدی که مثلا' ف' داره رو وارد می کنم یه لیست کشویی از comboBox باز بشه و کلیه فیلد هایی که حرفه اولشون' ف 'داره ظاهر بشه (به ترتیب حروف الفبایی (فارسی یا انگلیسی)) تا کاربر راحت تر بتونه فیلد مورد نظر خودشو از combBox پیدا کنه و اونو وارد کنه ممنون میشم اگه کمکم کنید.
سلام
جوابه من چی شد؟
سلام
سوال اولتونو چند وقت پيش خودتون پرسيدين که حل شد تو اين تاپيک:
برای مشکل بعديتون بايد از سرچ sql با like استفاده کنيد و اونو تو رويداد textchange اون بنويسينکد:http://www.forum.p30world.com/showthread.php?t=196998
سلام ....
میشه بیشتر توضیح بدید منظورتون از سرچ sql چیه؟
اصلا راه دیگه ای نیست
یه راهی که خود به خود بشه با combobox یا textbox, راحتر ......
همه با هم مساوی اند ولی بعضی ها مساوی ترند.
سلام با اجازه دوستاننقل قول:
به این چند تا مثال نگاه کن شاید کمکت کنه یه سرچ تو بخش دلفی بزن یکی از دوستان اموزش sql گذاشته بود
دانش اموزانی که نام انها با (مح )شروع میشود را لیست کند
دانش اموزانی که اخر نام انها به (ان) ختم میشودکد:Select * from school where name like moh%
اگر بخواهیم برای این حالت یک طول مشخص قائل شویم از (_) استفاده میکنیم و این حالت میتواند در وسط کلمه نیز باشدکد:Select * from school where name like %an
نام دانش اموزانی که با (م)شروع میشوند و 4 حرف دارند
این دستور تمام نامهای 4 حرفی که با (م) شروع میشود را لیست میکندکد:Select * from school where name like m___
نام دانش اموزانی که 5 حرفی بوده و اول اسم انها (م) و اخر اسم انها (ی) باشد
این کد نام دانش اموزانی که 5 حرفی بوده و اول اسم انها (م) و اخر اسم انها (ی) باشد را لیست میکندکد:Select * from school where name like m___i
توجه استفاده ار (_) میتواند در اول وسط یا اخر کلمه نیز باشد
تکراری پست شد
سلام خسته نباشید ....
راستش منظورم یه چیز دیگه هست من اول یه برنامه دلفی نوشتم حالا همون برنامه رو دارم با سی شارپ می نویسم تو برنامه دلفی این کد رو تو رویداد OnActivateفرم نوشتم comboboxها که به یه فیلد جدولی از دیتا بیس وصل بوده تو زمان اجرا آیتم هاش با تمام مقادیر ستون مربوط به آن فیلد مقدار دهی میشه و خود به خود وقتی حرفه اوله یه مقداری رو وارد می کنم تمام آن هایی که حرفه اولشون مثلا 'م ' ظاهر میشه بعد که حرفه دوم رو تو combobox وارد می کنم اونایی که دو حرفه دومشون تو combobox بوده می آد و بقیه نمی آین تا اینکه فیلد مربوطه پیدا بشه و کاربر اونو تو combobox وارد کنه.
کد دلفی>
adotable2.Open;adoTable2.First;while not (adoTable2.Eof) dobeginDBComboBox2.Items.add(adoTable2.fieldbyname('membe rcode').AsString);adoTable2.next;end;adoTable2.Closeمن می خوام بدونم تو سی شارپ باید چی کار کنم تا به این منظورم برسم کد سی شارپ معادل کد بالا چیه کسی می دونه اگه می دونه دریغ نکنه ......;
بعد در مورد اینکه از سرچ sql استفاده کنم من این کد رو نوشتم تو رویداد textchange
DataTable dt = new DataTable();comboBox1.Text = dt.Rows[0]["Name"].ToString();
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand();
adp.SelectCommand.Connection = con;
adp.SelectCommand.CommandText = "SELECT Name FROM Table1 WHERE (Name LIKE'" + comboBox1.Text + "%')";
adp.Fill(dt);
ولی وقتی حرفه اول رو وارد می کنم مثلا 'م' اگه item ها به ترتیب الفبایی مرتب نشده باشند از قبل , اولین اسمی که وارد شده می آد مثلا اگه اول مینا بعد محمد وارد شده باشد همون مینا م آد نه محمد در صورتی که من به ترتیب الفبایی می خوام باشه و اسمم کامل تو combobox نیاد بلکه هر حرفی که وارد می کنیم همه ی مقادیر مرتبط بیاد تا مقدار مورد نظر وارد بشه یه چیزی مثله Babylon7 اگه باهاش کار کرده باشید میم رو که وارد می کنیم کلیه اسامی که میم دارند ظاهر میشند چطوری می تونم این کار رو با c# انجام بدم؟؟؟
کمک کنید ...
نه اينتوری نيست
خيلی راهت تر از اين حرفهاست
دارم تايپ ميکنم
لطفا منتظر بمانيد ... ! .... please wait
ببخشيد ميخاستم پست بعدی رو تو همين بنويسم يادم رفت پاک هم که نميشه منظورم پست دادن الکی نبود
سلام
کی ميره اينهمه راه رو
دات نت جون به درد همين مواقع ميخوره ديگه
اولش خاستم از اون راه کاملا غير منطقی اين مساله رو حل کنم ! خوب شد اينکارو نکردم !
شما اول برای اينکه محتويات کمبو باکس تون رو به ترتيب الفبا مرتب کنيد آخر دستور sql خود از order by استفاده کنيد
آخره آخره دستوره SELECT همون اول که اطلاعات رو توی کمبو LOAD ميکنيد
بعد خاصيت autocomplete source کمبوی خود رو روی list items تنظیم کنید و بعد AutoCompleteMode رو روی suggest تنظیم کنید گزينه های ديگه اي هم داره مثل Append , SuggestAppend که فعلا وقت ندارم توضيح بدم خودتون تست کنيد کاملا کار کردشون واضحه ولی همون Suggest بهترهکد:SELECT Name From ...ORDER BY Name
همین ، خوش بگذره !
سلام و خسته نباشید.....
در مورد اینکه چطوری می تونم وقتی فرمم load میشه combobox ها با مقادیر یه ستون از جدول دیتابیس مقدار دهی بشن یعنی item های combobox حاوی مقادیر مثلا ستون name از جدول Table دیتابیسم باشه (شامل:علی, حسن,مریم...) و هر مقداری که تو دیتا بیس ذخیره شده همین مقدار دهی combobox رو تو زمان اجرا نمی دونم میشه در مورد کدش بیشتر توضیح بدهید این کد رو تو چه رویدادی کجا باید بنویسم؟؟؟
قسمت دومش که خیلی با حال بود ما شا الله جوابه همه سوالای من پیش شماست .....
موفق باشید ultimator جان و به خاطر کمکتون هم ممنونم...
سلام
اگه بخوام یه سطری رو از جدول دیتا بیس رو دیلیت کنم که چند تا شرط برقرار باشه باید چی کار کنم مثلا اگه سه تا ستون مقدار خاصی رو داشته باشند مثلا ستون نام علی باشه و نام خانوادگی رحیمی و آی دی = 1 باشه سطر مورد نظر حذف بشه یعنی سینتکس شو نمی دونم چه طوری هست میشه راهنماییم کنید یه چیزی مثله کد زیر رو نوشتم ولی غلطه انگار syntaxesh رو می خوام ....
cmd1.CommandText = "DELETE amanat WHERE itemcode=" + int.Parse(comboBox3.Text)+ ",ozviatcode =" + int.Parse(comboBox2.Text);
اول باید combobox مقدار بگیره که این مقادیر از یه ستون جدول دیتابیس می آیند وقتی که فرم load میشه و بعد از این مرتب هم باشن میشه کد select…. رو کامل بنویسین و همین طور کد مربوط به لود کردن کومبو باکس رو؟ مرسی.
delete
کد:DELETE FROM table WHERE <Search Conditions,,>
سلام
اينطوری :
:41:کد:private void Form1_Load(object sender, EventArgs e)
{
try
{
DataTable dt = new DataTable();
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand();
adp.SelectCommand.Connection = con;
adp.SelectCommand.CommandText = "SELECT Name FROM Table1 ORDER BY Name";
adp.Fill(dt);
comboBox1.DataSource = dt;
}
catch
{
}
}
فکر کنم این بهترهنقل قول:
int.Parse(comboBox3.Text)
:19: موفق باشیدکد:(comboBox1.SelectedItem)
سلام
در مورد مقدار دادن به کومبو باکس ها این کد رو نوشتم ولی کومبو باکس مقدارش تو زمان اجرا نوشته میشه System.Data.DataRowView این کد کاملشه همین رو بنویسم ؟ ببخشید در مورد delete هم میشه سینتکس کامل کد رو بنویسید شرمنده آخه error میده...
شرمنده کدی که نوشتم کامل نبود اینم کاملش :
کد:private void Form1_Load(object sender, EventArgs e)
{
try
{
SqlConnection con = new SqlConnection("Data Source=(local);Initial Catalog=pubs;Integrated Security=True");
DataTable dt = new DataTable();
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = new SqlCommand();
adp.SelectCommand.Connection = con;
adp.SelectCommand.CommandText = "SELECT Name FROM Table1 ORDER BY Name";
adp.Fill(dt);
comboBox1.DataSource = dt;
// This row is for display the name in the combo
comboBox1.DisplayMember = "Name";
}
catch
{
}
}
اینم Delete
کد:private void button1_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("Data Source=(local);Initial Catalog=pubs;Integrated Security=True");
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "DELETE FROM table1 WHERE Name ='" + comboBox1.GetItemText(comboBox1.SelectedItem) + "'";
int result;
con.Open();
result = cmd.ExecuteNonQuery();
con.Close();
label1.Text = result.ToString();
}
result تعداد سطرهای پاک شده رو نگه میداره
فکر کنم انشاالله دیگه مشکلی نباشه ! کاش از اول کامل مینوشتم !
سلام
ممنونم ولی تو کد دیلیت که فقط یه شرط اعمال شده من می خوام چند تا شرط اگه برقرار بود دیلیت کنم مثلا idو هم name مقدار خاصی را داشته باشند.
این کد رو که از خودتون قبلا یاد گرفتم مشکلی نداره ولی در مورد اینکه چند تا شرط برقرار باشه یه سطری رو از جدول حذف کنه خواهشا symtax کدش رو بنویسین خیلی فوریه خیلی عجله دارم و همین که
اینم این با AND
کد:DELETE FROM table1 WHERE ( Name ='" + comboBox1.GetItemText(comboBox1.SelectedItem) + "' AND Family='" + comboBox2.GetItemText(comboBox2.SelectedItem) + "')";
سلام خیلی ممنونم از اینکه مشکلمو برطرف کردین متشکرم.
سلام چطوری می تونم از datagridview پرینت بگیرم؟یه راه ساده اگه میشناسین بگید؟
string constr="server=نام سرور;UID=khl ;نام کاربری که معمولاsaمیباشد;passord;DataBase=نام بانک";
مثال:
string constr = "server=localhost;UID=sa;password=;DataBase=Univer sity";
SqlConnection con = new SqlConnection(constr);
con.Open();
البته راه بهتر و درسترش استفاده از SqlParameter هست .نقل قول:
منظورت از پرینت دقیقا چیه منظورت با پرینتر رویه کاغذ هست .نقل قول:
تو برنامه می خوام از اطلاعات دیتا گرید ویو که به جداول دیتا بیس وصل شده اند پرینت بگیرم...
یه کامپوننت 100 مگی دیدم این کارو میکرد !! فکر نکنم واسه همین به دانلودش بیرزه ! با report مشکل حل نمیشه ؟نقل قول:
باید از کلاس PrintDocument استفاده کنی برای پرینت ساده هم هست برای تنظیمات پرینت هم باید از PrintDialog استفاده کن جفتش تو منوی Toolbox تو Printing هست . تو MSDN هم سرچ بزن اطلاعات زیاد و خوبی بدست میاری .نقل قول:
سلام
بچه ها من هر کاری می کنم نمیشه مقادیر ستون جدولم نمیاد تو کمبوباکس ترای کچ رو که بر می دارم از adp.fill(dt) ایراد می گیره
شما باید کانکشن استرینگ ، دستور select و displaymember رو بر اساس دیتا بیستون تغییر بدین
همچنین در بلاک catch از try میتونید کدی بنویسید که مثلا با یه msgbox خطا رو ( ex.Message ) نمایش بده .
بعد از چک کردن اینها اگه نیازی به کمک بود در خدمتیم ...
ممنون اینو ÷یدا کردم
حالا می خوام از آیتم های کمبو یکی که انتخاب شده رو با چیز دیگه مقایسه کنم ولی نوع اون ایتم ها استرینگ نیست وقتی هم استرینگ می کنم دیتا رو و از این جور چیزا می نویسه
شما میتونید علاوه بر DisplayMember خاصیت valueMember اونرو هم به همون فیلد نسبت بدین و به راحتی value ها رو مقایسه کنید
همون طور که دوستمون گفتن Item ها یه مقدار Value هم دارن که برای مقایسه از اون استفاده کنید روش معمولش اینطوریه که باید id های جدولتون رو به عنوان Value Member قرار بدید و چیزی رو که میخواین نمایش بدین به عنوان Display Member .نقل قول:
نگاه کنید مثلا اینو می نویسم
Foreach(string st in combobox1.items)
{
Messagebox.show(st);
}
این طوری از جواب نمیده استرینگ رو ابجکت می کنم
بعد تو مسیج باکس می نویسه
System.data.datarow view
نقل قول:اينطوری مشکل شما حل ميشه
البته الان ويژوال استوديو دم دستم نيست با نت پد نوشتم تست هم نکردم اگه غلط املايی داشت خودتون رفعش کنيد ، ولی روش همينه تو ويبی نت که جواب ميده !
کد:
Foreach(DataRowView drv in combobox1.items)
{
MsgBox.show(ComboBox1.GetItemText(drv));
}
ممنون
یه چیزی یادم نیست چه کار کردم که این اومد تو فرم لود
//this.kalayekharideTableAdapter.Fill(this.hesabDari DataSet.kalayekharide);
اولش درس بودولی حالا
وقتی میخوام اجرا کنم ایراد می گیره بعدش از // می ذارم درس میشه
ولی اگه از اولش این طوری باشه// تو کمبو باکس چیزی نمیاره
شما کمبو باکس رو با آداپتور ویژوال پر کردید همون روشهای ویزارد یعنی use databound items رو تیک زدید و ... دقیقا متوجه نشدم کجاش error میده
حتما جدولتون تغییر کرده .. اگه // بذارید کد کامنت میشه و اجرا نمیشه و دیتا ست پر نمیشه و کمبو خالی میمونه ...