PDA

View Full Version : انتخاب ایتم در combo box و گرفتن ایدی اون برای قرار دادن در foreign key



mohsensn
پنج شنبه 22 فروردین 1387, 18:39 عصر
سلام آقا من می خوام اطلاعات یک سهام دار رو وارد کنم با این تفاصیر که این سهام داره بغیر از اسم و ..... یک زمینه فعالیت داره که یک جول دیگه ای گرفته میشه و در یک combobox وارد میشه که یک foreign ley هم داخل جدول سهام دار قرار دادم براش حالا موقعی که من تایید می کنم که اطلاعات زخیره شه داخل جدول ارور می ده که foreign key در تیبل سهام دار نمی تونه null باشه

و دیگر اینکه اگر مقاله ای آموزش کاملی در مورد مشکل من دارید واقعا ممنون میشم راهنماییم کنید برای جستوجو هم نمی دونم چه متنی رو بنویسم که یک برنامه نوشته شده یا پروژه ای پیدا کنم کد های منم به این صورت هست


کد:
conn.Open();comm = newSqlCommand("INSERT INTO sahamdar (cus_name,cus_family,cus_fax,cus_birthdate,cus_num b,cus_educ,cus_web,cus_email) VALUES (@cus_name,@cus_family,@cus_fax,@cus_birthdate,@cu s_numb,@cus_educ,@cus_web,@cus_email)", conn);comm.Parameters.AddWithValue("@cus_name", txtname.Text);comm.Parameters.AddWithValue("@cus_family", txtFamily.Text);comm.Parameters.AddWithValue("@cus_fax", txtFax.Text);comm.Parameters.AddWithValue("@cus_birthdate", txtDate.Text);comm.Parameters.AddWithValue("@cus_numb", txtNumb.Text);comm.Parameters.AddWithValue("@cus_web", txtweb.Text);comm.Parameters.AddWithValue("@cus_email", txtemail.Text);comm.Parameters.AddWithValue("@cus_educ", cmbedu.SelectedItem); try{comm.ExecuteScalar();}catch (Exception sqlexeptionerr){MessageBox.Show(sqlexeptionerr.Mes sage);}conn.Close();}privatevoid setcombobox(){conn = newSqlConnection(_conn);comm = newSqlCommand("select act_title,ACT_ID from activity", conn); conn.Open();dr = comm.ExecuteReader();while (dr.Read()) {if(dr[1].ToString().Length>0)cmbact.Items.Add(dr[1].ToString());}conn.Close();}

ببینید دوست عزیز من داخل combo box از جدول زمینه فعالیت لیست عنوان ها را گرفته و در آن نمایش داده ام. و یک جدول دیگر دارم که جدول سهام دار می باشد و اسم و فامیل و ..... مشخصات دیگر در آن قرار دارد که یک primary key و foreign key که همان id جدول زمینه فعالیت هست وجود دارد حالا وقتی که در combo box من زمینه فعالیت را انتخاب می کنم نمی دونم چجوری باید id اصلی زمینه فعالیت رو بدست بیارم که وارد foreign key کنم و این id در جدول خودش بصورت اوتوماتیک پر میشه و 1 به 1 اضافه میشه فکر کنم کامل گقته باشم ممنون

mohsensn
پنج شنبه 22 فروردین 1387, 18:41 عصر
conn.Open();
comm = newSqlCommand("INSERT INTO sahamdar (cus_name,cus_family,cus_fax,cus_birthdate,cus_num b,cus_educ,cus_web,cus_email) VALUES (@cus_name,@cus_family,@cus_fax,@cus_birthdate,@cu s_numb,@cus_educ,@cus_web,@cus_email)", conn);
comm.Parameters.AddWithValue("@cus_name", txtname.Text);
comm.Parameters.AddWithValue("@cus_family", txtFamily.Text);
comm.Parameters.AddWithValue("@cus_fax", txtFax.Text);
comm.Parameters.AddWithValue("@cus_birthdate", txtDate.Text);
comm.Parameters.AddWithValue("@cus_numb", txtNumb.Text);
comm.Parameters.AddWithValue("@cus_web", txtweb.Text);
comm.Parameters.AddWithValue("@cus_email", txtemail.Text);
comm.Parameters.AddWithValue("@cus_educ", cmbedu.SelectedItem);



try
{
comm.ExecuteScalar();
}
catch (Exception sqlexeptionerr)
{
MessageBox.Show(sqlexeptionerr.Message);
}
conn.Close();
}
privatevoid setcombobox()
{
conn = newSqlConnection(_conn);comm = newSqlCommand("select act_title,ACT_ID from activity", conn);

conn.Open();
dr = comm.ExecuteReader();
while (dr.Read())
{
if(dr[1].ToString().Length>0)
cmbact.Items.Add(dr[1].ToString());
}
conn.Close();
}