所以我的购物车有问题。我正在尝试将 Title 和 Price 列从购物车表 (tblCart) 中转移出来,并将它们发送到购买的项目表 (tblPurchaseItem) 中。这工作正常,就像它假设的那样。现在的问题是 tblPurchaseItem 有一个名为 PurchaseID 的额外列,它不在 tblCart 中。现在在“结帐”按钮上单击此操作。我遇到的问题是,每次从购物车中转移表时,我都试图为添加到 tblPurchaseItem 中的新行设置一个值。所以说 tblCart 添加了一个电影列表,我希望它们在 tblPurchaseItem 中都具有相同的值。下次有人单击“结帐”按钮时,我希望将 tblCart 中的新表发送到 tblPurchaseItem 作为最后一个 +1 的值。当我尝试这个时,我的 PurchaseID 列保持 = 为 null 并且没有取值。任何建议将不胜感激!
这是我的“结帐”按钮的代码:
private void Button_Click(object sender, RoutedEventArgs e)
{
purID += 1;
cn.Open();
String cmdString = "INSERT INTO tblPurchaseItem(Title, Price) Select Title, Price from tblCart";
String cmdString3 = "DELETE from tblCart";
String cmdString4 = "Select * from tblPurchaseItem";
SqlCommand cmd = new SqlCommand(cmdString, cn);
SqlCommand cmd3 = new SqlCommand(cmdString3, cn);
SqlCommand cmd4 = new SqlCommand(cmdString4, cn);
da = new SqlDataAdapter(cmd4);
dt = new DataTable("tblPurchaseItem");
da.Fill(dt);
foreach (DataRow row in dt.Rows)
{
String cmdString2 = "UPDATE tblPurchaseItem set PurchaseID = '" + purID + "' where PurchaseID is Null";
SqlCommand cmd2 = new SqlCommand(cmdString2, cn);
}
cmd.ExecuteNonQuery();
cmd3.ExecuteNonQuery();
所以总而言之,说当用户单击“结帐”时发送到 tblPurchaseItem 的第一个表将被分配 purID 1。下次单击结帐按钮时,我希望将这些值分配给 2,依此类推. 因此,每笔交易都会有自己的 purID。