الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ممكن مساعده من الاخوه

مغلق
بدأه hapipfriend في 18 فبراير 2007 · 2 رد · 531 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

عندى قاعدة بيانات فيها جدولين جدول الطلاب وجدول الفصول

الجدول الطلاب عباره عن ( stud_id pk ,stud_first_name_stud_second_name,telephone,sex,birthday,adrees,class_id.........)

وجدول الفصول (class_id pk,class_name,year_id)

مربوطين مع بعض عملت فورمه عشان ادخل بيانات طالب جديد ولكن به خطاء ارجو من الاخوه انهم يقولولى ايه هو الخطاء

private void addbtn_Click(object sender, System.EventArgs e)

{

SqlCommand stud_idCommand=mySqlConnection.CreateCommand();

stud_idCommand.CommandText="select max(stud_id) from student";

SqlDataReader idDataReader=stud_idCommand.ExecuteReader();

if (idDataReader.Read()){count_stud_id=Int32.Parse(idDataReader[0].ToString());}

idDataReader.Close();

TextBox [] textboxes ={txtname , txtadress , txtseconedname};

string box="";

for (int i=0;i<=textboxes.Length-1;i++)

{

if (textboxes.Text==""){

box+=" "+textboxes.Tag.ToString();}

}

ComboBox [] cmbboxes={cmbclass, cmbbirthday , cmbbirthyear};

string comb="";

for(int i=0;i<=cmbboxes.Length-1;i++){

if (cmbboxes.Text==""){

comb+=" "+cmbboxes.Tag.ToString();}

}

string result=box+""+comb;

if (result!=""){MessageBox.Show("برجاء ادخال "+result);}

else

{

SqlCommand selectClass_id=mySqlConnection.CreateCommand();

selectClass_id.CommandText="execute class_id @class_name";

selectClass_id.Parameters.Add("@class_name",SqlDbType.NVarChar,20);

selectClass_id.Parameters["@class_name"].Value=cmbclass.Text;

SqlDataReader class_idReader=selectClass_id.ExecuteReader();

if(class_idReader.Read()){class_id=class_idReader[0].ToString();}

label10.Text=class_id;

class_idReader.Close();

SqlCommand insertCommand=mySqlConnection.CreateCommand();

insertCommand.CommandText="select stud_first_name,stud_second_name,"+

"birthday,adress,telephone,sex,class_id,religion from student";

SqlDataAdapter myDataAdapter=new SqlDataAdapter();

myDataAdapter.SelectCommand=insertCommand;

DataSet myDataSet=new DataSet();

try

{

int colum_id= myDataAdapter.Fill(myDataSet,"student");

label10.Text=colum_id.ToString();

DataTable myDataTable=myDataSet.Tables["student"];

DataRow myNewRow=myDataTable.NewRow();

label10.Text=myNewRow.RowState.ToString();

DataColumn myDataColumn=myDataSet.Tables["student"].Columns["stud_id"];

/*myDataTable.PrimaryKey=new DataColumn []{

myDataColumn};

myDataColumn.AllowDBNull=false;

myDataColumn.AutoIncrement=true;

myDataColumn.AutoIncrementSeed=-1;

myDataColumn.AutoIncrementStep=-1;*/

myNewRow["stud_first_name"]=txtname.Text;

myNewRow["stud_second_name"]=txtseconedname.Text;

switch (cmbbirthmonth.Text)

{

case "يناير":month="1"; break;

case "فبراير":month="2"; break;

case "مارس":month="3"; break;

case "ابريل":month="4"; break;

case "مايو":month="5"; break;

case "يونيو":month="6"; break;

case "يوليو":month="7"; break;

case "اغسطس":month="8"; break;

case "سبتمبر":month="9"; break;

case "اكتوبر":month="10"; break;

case "نوفمبر":month="11"; break;

case "ديسمبر":month="12"; break;

}

string birthday;DateTime birth_day;

birthday=cmbbirthday.Text+"/"+month+"/"+cmbbirthyear.Text;

birth_day=DateTime.Parse(birthday);

myNewRow["birthday"]=birth_day;

myNewRow["adress"]=txtadress.Text;

if(txtphone.Text!="")

{

myNewRow["telephone"]=txtphone.Text;

}

else {myNewRow["telephone"]="";}

myNewRow["sex"]=cmbsex.Text;

myNewRow["religion"]=cmbreligion.Text;

myNewRow["class_id"]=class_id;

myDataTable.Rows.Add(myNewRow);

label10.Text=myNewRow.RowState.ToString();

int numOfRows=myDataAdapter.Update(myDataSet,"student");

}

catch (SqlException ex1)

{

SqlErrorCollection erData=ex1.Errors;

for(int i=0;i<erData.Count;i++)

{

MessageBox.Show("errors "+i+" :"+

erData.Number+", "+

erData.Class+" ,"+

erData.Message);

}

}

catch (Exception ex2)

{

MessageBox.Show(ex2.Message);

}

}

}

وعاوز استفسار كمان لو انا عاوز ادخل stud_id

فى جمله select

ازاى اعرف قيمتها الى هاتخدها مع العلم انها فى قاعده البيانات autoincrement

وكل ماعرفها فى الكود يظهر خطأء ان فيه تكرار فى العمود studi_id

واكون شاكر لو حد رد عليا

انا رافع الصوره بتاع رساله الخطاء

post-45513-1171815618_thumb.jpg

#2

SqlCommand insertCommand=mySqlConnection.CreateCommand();

insertCommand.CommandText="select stud_first_name,stud_second_name,"+

"birthday,adress,telephone,sex,class_id,religion from student";

el insert command must be "insert tableName("clmns...") values("...")" and if u wanna update the row just type insertCommand.ExecuteNonQuery(); for more info about sql commands go to microsoft access help.

تم تعديل هذه المشاركة بواسطة lionx99 في 19 فبراير 2007 في 00:55

#3

شكرا اخى العزيز انا مكنتش واخد بالى من جمله الادخال وشكرا جزيلا على الرد

هذا الموضوع مغلق.

مواضيع مشابهة