forodo
جمعه 12 دی 1393, 16:23 عصر
سلام
هنگامی که دکمه ثبت رو می زنم اروره زیر رو میده:
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_tblPeyvast_tblErsali". The conflict occurred in database "Radman", table "dbo.tblErsali", column 'ID'.
The statement has been terminated.
کدهای استفاده از تراکنش:
private void SendDataToDatabase()
{
UseDate ud = new UseDate();
SqlTransaction Transaction;
SqlConnection con = new SqlConnection(clsForms.ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
con.Open();
Transaction = con.BeginTransaction();
cmd.Transaction = Transaction;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
try
{
cmd.CommandText = @"INSERT INTO tblErsali(SenderUserName,Subject,tabaghe,
SendDate,Sendtime,bazgasht,peyrov,FileFile,Formate File, NameFile,TabagheType,GetLetterGirande,
WhatOutEnterInBazgasht,WhatOutEnterInPeyro, ProjectName
)
VALUES(
@SenderUserName,@Subject,@tabaghe,
@SendDate,@Sendtime,@bazgasht,@peyrov, @FileFile,@FormateFile, @NameFile,@TabagheType,@GetLetterGirande,
@WhatOutEnterInBazgasht,@WhatOutEnterInPeyro, @ProjectName)";
cmd.Parameters.AddWithValue("@SenderUserName", Program.Username);
cmd.Parameters.AddWithValue("@Subject", txtSubject.Text);
cmd.Parameters.AddWithValue("@tabaghe", CmbTabagh.SelectedValue.ToString());
cmd.Parameters.AddWithValue("@SendDate", lblDate.Text);
cmd.Parameters.AddWithValue("@Sendtime", ududud.TimeEightCharacter().ToString());
cmd.Parameters.AddWithValue("@bazgasht", txtAtf.Text);
cmd.Parameters.AddWithValue("@peyrov", txtPeyrov.Text);
cmd.Parameters.AddWithValue("@FileFile", File.ReadAllBytes(MasireFile));
cmd.Parameters.AddWithValue("@FormateFile", FormateFile);
cmd.Parameters.AddWithValue("@NameFile", textBox1.Text);
if (CmbTabagh.Text.Contains("محرمانه"))
{
cmd.Parameters.AddWithValue("@TabagheType", true);
}
else
{
cmd.Parameters.AddWithValue("@TabagheType", false);
}
cmd.Parameters.AddWithValue("@GetLetterGirande", cmbGirande.SelectedValue.ToString());
cmd.Parameters.AddWithValue("@WhatOutEnterInBazgasht", Program.OutInEnterBazgasht);
cmd.Parameters.AddWithValue("@WhatOutEnterInPeyro", Program.OutInEnterPeyro);
cmd.Parameters.AddWithValue("@ProjectName", cmbProjectName.SelectedValue.ToString());
cmd.ExecuteNonQuery();
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if (Program.LetterPic.Count > 0)
{
int i = 0;
foreach (byte[] s in Program.LetterPic)
{
cmd.CommandText = @"INSERT INTO tblPeyvast(LetterName,LetterPic,LID, FormateFile)
VALUES(@LetterName,@LetterPic,@LID, @FormateFile)
";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@LetterName", Program.PicName[i]);
cmd.Parameters.AddWithValue("@LetterPic", Program.LetterPic[i]);
cmd.Parameters.AddWithValue("@LID", getMaxID());
cmd.Parameters.AddWithValue("@FormateFile", Program.FormateFilePeyvast[i]);
cmd.ExecuteNonQuery();
i++;
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Transaction.Commit();
MessageBox.Show("نامه مورد نظر با موفقیت ارسال شد", "ثبت اطلاعات", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.Close();
}
catch (Exception ex)
{
Transaction.Rollback();
MessageBox.Show("در ارتباط با بانک اطلاعاتی مشکلی پیش آمده است", "خطا درون بانک اطلاعاتی", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
finally
{
con.Close();
}
}
هنگامی که دکمه ثبت رو می زنم اروره زیر رو میده:
The INSERT statement conflicted with the FOREIGN KEY constraint "FK_tblPeyvast_tblErsali". The conflict occurred in database "Radman", table "dbo.tblErsali", column 'ID'.
The statement has been terminated.
کدهای استفاده از تراکنش:
private void SendDataToDatabase()
{
UseDate ud = new UseDate();
SqlTransaction Transaction;
SqlConnection con = new SqlConnection(clsForms.ConnectionString);
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandType = CommandType.Text;
con.Open();
Transaction = con.BeginTransaction();
cmd.Transaction = Transaction;
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
try
{
cmd.CommandText = @"INSERT INTO tblErsali(SenderUserName,Subject,tabaghe,
SendDate,Sendtime,bazgasht,peyrov,FileFile,Formate File, NameFile,TabagheType,GetLetterGirande,
WhatOutEnterInBazgasht,WhatOutEnterInPeyro, ProjectName
)
VALUES(
@SenderUserName,@Subject,@tabaghe,
@SendDate,@Sendtime,@bazgasht,@peyrov, @FileFile,@FormateFile, @NameFile,@TabagheType,@GetLetterGirande,
@WhatOutEnterInBazgasht,@WhatOutEnterInPeyro, @ProjectName)";
cmd.Parameters.AddWithValue("@SenderUserName", Program.Username);
cmd.Parameters.AddWithValue("@Subject", txtSubject.Text);
cmd.Parameters.AddWithValue("@tabaghe", CmbTabagh.SelectedValue.ToString());
cmd.Parameters.AddWithValue("@SendDate", lblDate.Text);
cmd.Parameters.AddWithValue("@Sendtime", ududud.TimeEightCharacter().ToString());
cmd.Parameters.AddWithValue("@bazgasht", txtAtf.Text);
cmd.Parameters.AddWithValue("@peyrov", txtPeyrov.Text);
cmd.Parameters.AddWithValue("@FileFile", File.ReadAllBytes(MasireFile));
cmd.Parameters.AddWithValue("@FormateFile", FormateFile);
cmd.Parameters.AddWithValue("@NameFile", textBox1.Text);
if (CmbTabagh.Text.Contains("محرمانه"))
{
cmd.Parameters.AddWithValue("@TabagheType", true);
}
else
{
cmd.Parameters.AddWithValue("@TabagheType", false);
}
cmd.Parameters.AddWithValue("@GetLetterGirande", cmbGirande.SelectedValue.ToString());
cmd.Parameters.AddWithValue("@WhatOutEnterInBazgasht", Program.OutInEnterBazgasht);
cmd.Parameters.AddWithValue("@WhatOutEnterInPeyro", Program.OutInEnterPeyro);
cmd.Parameters.AddWithValue("@ProjectName", cmbProjectName.SelectedValue.ToString());
cmd.ExecuteNonQuery();
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if (Program.LetterPic.Count > 0)
{
int i = 0;
foreach (byte[] s in Program.LetterPic)
{
cmd.CommandText = @"INSERT INTO tblPeyvast(LetterName,LetterPic,LID, FormateFile)
VALUES(@LetterName,@LetterPic,@LID, @FormateFile)
";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@LetterName", Program.PicName[i]);
cmd.Parameters.AddWithValue("@LetterPic", Program.LetterPic[i]);
cmd.Parameters.AddWithValue("@LID", getMaxID());
cmd.Parameters.AddWithValue("@FormateFile", Program.FormateFilePeyvast[i]);
cmd.ExecuteNonQuery();
i++;
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Transaction.Commit();
MessageBox.Show("نامه مورد نظر با موفقیت ارسال شد", "ثبت اطلاعات", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.Close();
}
catch (Exception ex)
{
Transaction.Rollback();
MessageBox.Show("در ارتباط با بانک اطلاعاتی مشکلی پیش آمده است", "خطا درون بانک اطلاعاتی", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
finally
{
con.Close();
}
}