我正在使用StringBuilder
在asp.net
中使用多个查询。但是我收到了错误
ORA-00936:缺少表达
以下是我的查询。
StringBuilder sb = new StringBuilder();
if (ddlProject.SelectedValue != "0" && ddlBuilding.SelectedValue != "0")
{
sb.Append("insert into xxacl_pN_LEASES_ALL_h select sysdate,* from xxacl_pN_LEASES_ALL");
sb.Append(";");
sb.Append("update xxacl_pN_LEASES_ALL set ASSIGNED_TO = '" + ddlSalesUser.SelectedValue + "'");
sb.Append(";");
}
if (ddlProject.SelectedValue != "0" && ddlBuilding.SelectedValue == "0")
{
sb.Append("insert into xxacl_pN_LEASES_ALL_h select sysdate,* from xxacl_pN_LEASES_ALL");
sb.Append(";");
sb.Append("update xxacl_pN_LEASES_ALL set ASSIGNED_TO = '" + ddlSalesUser.SelectedValue + "'");
sb.Append(";");
}
OracleConnection ObjPriCon = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["OracleConn"].ToString());
OracleCommand cmd1 = new OracleCommand();
string allQueries = sb.ToString();
cmd1.CommandText = allQueries;
cmd1.Connection = ObjPriCon;
ObjPriCon.Open();
cmd1.ExecuteNonQuery(); // here is the error caused
ScriptManager.RegisterStartupScript(this, this.GetType(), "alert", "alert('Record updated successfully');window.location ='FrmHoldingCoordinateUpdate.aspx?TranType=FM&PView=N&Mode=A&Redirect=oracle&Key=0&Redirect=" + Request.QueryString["Redirect"] + "&userid=" + Request.QueryString["userid"].ToString() + "';", true);
此外,allQueries
将结果显示为
insert into xxacl_pN_LEASES_ALL_h select getdate(),* from xxacl_pN_LEASES_ALL;update xxacl_pN_LEASES_ALL set ASSIGNED_TO = '5681';
答案 0 :(得分:0)
您需要在*
之前使用表名的别名
例如:
insert into xxacl_pN_LEASES_ALL_h select getdate(),t.* from xxacl_pN_LEASES_ALL t;