INSERT語句與FOREIGN KEY約束FK_Kupovina_Kupac
衝突。衝突發生在數據庫OnlineApoteka
,表dbo.Kupac
,列'ID'。 該聲明已被終止。SqlException INSERT語句與FOREIGN KEY約束衝突
我真的很困惑我不知道爲什麼我們不允許?我在前面報告了一個錯誤; ?
public static void Kupi(long lekID, int kolicina, double cena, long nacinIsporukeID, string korisnickoIme)
{
SqlConnection con = new SqlConnection();
try
{
con.ConnectionString = ConfigurationManager.ConnectionStrings["OnlineApotekaConnectionString"].ConnectionString;
con.Open();
string updateLager = @"
UPDATE Lager
SET [email protected]
WHERE [email protected]";
SqlCommand cmd = new SqlCommand(updateLager, con);
cmd.Parameters.AddWithValue("@LekID", lekID);
cmd.Parameters.AddWithValue("@Kolicina", kolicina);
cmd.ExecuteNonQuery();
string [email protected]"
INSERT INTO Kupovina (KupacID, LekID, Datum, Kolicina, Cena, NacinIsporukeID)
VALUES (@KupacID, @LekID, @Datum, @Kolicina, @Cena, @NacinIsporukeID)";
cmd = new SqlCommand(insertIntoKupovina, con);
cmd.Parameters.AddWithValue("@KupacID", KupacAdapter.GetID(korisnickoIme));
cmd.Parameters.AddWithValue("@LekID", lekID);
cmd.Parameters.AddWithValue("@Datum", DateTime.Now.Date);
cmd.Parameters.AddWithValue("@Kolicina", kolicina);
cmd.Parameters.AddWithValue("@Cena", cena);
cmd.Parameters.AddWithValue("@NacinIsporukeID", nacinIsporukeID);
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
}
}
我有一個按鈕Buy的例行事件。 當您單擊Kupi,應該從表拉格冊中刪除,並放置在Kupac Kupovina
protected void kupiButton_Click(object sender, EventArgs e)
{
KupovinaAdapter.Kupi(Convert.ToInt64(kupovinaGreedView.SelectedDataKey["LekID"].ToString()),
Convert.ToInt32(kolicinaTextBox.Text),
Convert.ToInt64(kupovinaGreedView.SelectedDataKey["Cena"].ToString()),
Convert.ToInt64(nacinIsporukeDropDownList.SelectedValue),
User.Identity.Name);
}
protected void kupovinaGreedView_SelectedIndexChanged(object sender, EventArgs e)
{
if (!String.IsNullOrEmpty(kupovinaGreedView.SelectedDataKey["Lek"].ToString()))
{
LekLabel.Text = kupovinaGreedView.SelectedDataKey["Lek"].ToString();
}
if (!String.IsNullOrEmpty(kupovinaGreedView.SelectedDataKey["Kolicina"].ToString()))
{
kolicinaValidator.MaximumValue = kupovinaGreedView.SelectedDataKey["Kolicina"].ToString();
}
請澄清你的問題。 '我不知道爲什麼我們不允許?我在前面報告了一個錯誤; ?意思?另外,請閱讀「與FOREIGN KEY約束衝突的INSERT語句」的含義,並查看它是否可以解釋代碼中的問題。 – 2013-03-05 16:08:58
我想* OP想知道爲什麼異常仍然被提出,而不是隻是忽略... – 2013-03-05 16:11:20