我有2个像Item和Image的表,第一个表tbl_Item有2个字段,它们是项目代码,项目名称和第二个表tbl_Image有2个字段,如项目代码和项目图像。我有项目代码,项目名称,项目图像和一个按钮等字段。当我单击提交按钮时,这些记录将插入到两个表中。我想将数据插入两个表中它是如何可能的?任何人都可以建议我吗?
cmd.Connection = new SqlConnection(ConfigurationManager.ConnectionStrings[1].ToString());
cmd.CommandText = "insert into tbl_item (@itemcode,@itemname) values(ItemCode,ItemName)";
cmd.CommandText = "insert into tbl_image (@itemcode,@itemimage) values(ItemCode,ItemImage)";
答案 0 :(得分:3)
是的,您可以同时插入两个表。检查此代码:
注意:您的原始插入查询错误,我已对其进行了修改。
public void InsertIntoDataBase(int itemCode, string itemName, string itemImage)
{
string connString = ConfigurationManager.ConnectionStrings[1].ToString();
string query1 = @"insert into tbl_item (ItemCode,ItemName) values(@itemcode,@itemname)";
string query2 = @"insert into tbl_image (ItemCode,ItemImage) values(@itemcode,@itemimage)";
SqlConnection conn = new SqlConnection(connString);
try
{
// Exc]ecute the first query.
SqlCommand cmd = new SqlCommand(query1, conn);
cmd.Parameters.Add("@itemcode", SqlDbType.Int, 10, "ItemCode").Value = itemCode; // Pass the actual Item code
cmd.Parameters.Add("@itemname", SqlDbType.Text, 20, "ItemName").Value = itemName; //Pass the actual Item name
cmd.ExecuteNonQuery();
// Exc]ecute the second query.
cmd = new SqlCommand(query2, conn);
cmd.Parameters.Add("@itemcode", SqlDbType.Int, 10, "ItemCode").Value = itemCode; // Pass the actual Item code
cmd.Parameters.Add("@itemimage", SqlDbType.Text, 20, "ItemImage").Value = itemImage; // Pass the actual Item image
cmd.ExecuteNonQuery();
}
catch (Exception e)
{
}
finally
{
conn.Close();
}
}
答案 1 :(得分:1)
如果要在单个命令执行中插入两个记录,则使用“;”连接查询。
,例如
cmd.CommandText = "insert into tbl_item (@itemcode,@itemname) values(ItemCode,ItemName);insert into tbl_image (@itemcode,@itemimage) values(ItemCode,ItemImage)";