使用asp.net从表单收集数据并将其插入由多个表组成的sql视图

使用asp.net从表单收集数据并将其插入由多个表组成的sql视图,asp.net,sql,forms,insert,views,Asp.net,Sql,Forms,Insert,Views,我正在尝试使用asp.net从表单收集数据,并将其插入到由多个表组成的sql视图中。但是,不断显示一个错误,说明“v_orderdetails不可更新,因为修改会影响多个基表。”有人能帮忙吗,下面是我的代码: public partial class _Order : System.Web.UI.Page { string myConnectionString; protected void Page_Load(object sender, EventArgs e)

我正在尝试使用asp.net从表单收集数据,并将其插入到由多个表组成的sql视图中。但是,不断显示一个错误,说明“v_orderdetails不可更新,因为修改会影响多个基表。”有人能帮忙吗,下面是我的代码:

public partial class _Order : System.Web.UI.Page
{
    string myConnectionString;


    protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
        }
    }

    protected void Orderbtn_Click(object sender, EventArgs e)
    {
        SqlConnection myConn = new SqlConnection();
        myConnectionString = "server=CSSQL; database=Oh31_PE; Trusted_Connection = true";
        myConn.ConnectionString = myConnectionString;

        string querystring1;
        querystring1 = "insert into v_orderdetails (dbo.t_order.OrderDate, dbo.t_product.Material, dbo.t_product.Description, dbo.t_orderdetails.Quantity) values ( '";
        querystring1 += od.Text + "','" + opname.Text + "','" + tom.Text + "','" + tod.Text + "','" + qq.Text + "')";

        SqlCommand dbcommand1 = new SqlCommand();
        dbcommand1.CommandText = querystring1;
        dbcommand1.Connection = myConn;
        myConn.Open();
        dbcommand1.ExecuteNonQuery();
        myConn.Close();

        {
            Response.Redirect("Order.aspx");
        }



    } // end Orderbtn_Click
}

您可以发布查看v_orderdetails的sql吗?这可能包含有关视图不可更新的原因的线索。请选择dbo.t_order.OrderNo、dbo.t_order.OrderDate、dbo.t_product.Material、dbo.t_product.Description,dbo.t_orderdetails.dbo.t_order内部连接dbo.t_orderdetails关于dbo.t_order.OrderNo=dbo.t_orderdetails.OrderNo内部连接dbo.t_产品关于dbo.t_orderdetails.ProductID=dbo.t_产品我认为问题在于t_order和t_orderdetails有一对多的关系关系直接插入到视图是很棘手的,因为这样做有很多限制。或者a)运行两个单独的插入(一个在t_order上,一个在t_orderdetails上),或者b)在数据库中创建一个执行这两个插入的存储过程,然后在ASP.NET代码中运行该存储过程的一个执行过程?