![](/img/trans.png)
[英]ASP.NET Core MVC web app throws error while updating the database
[英]error while updating a database in ASP.NET
我在更新SQL數據庫時遇到問題,問題不在於它根本不更新,而是特定參數正在更新,而其他參數則沒有。
這是更新參數的代碼:
string EditRequest = "UPDATE Requests SET Description = @Desc, BJustif = @Justif, Priority = @Priority, Requested_System = @Requested, Request_Status = @Stat WHERE";
EditRequest += " Req_ID=@ID";
SqlConnection Submit_conn = new SqlConnection(WebConfigurationManager.ConnectionStrings["DBConn"].ConnectionString);
SqlCommand Submit_comm = new SqlCommand(EditRequest, Submit_conn);
Submit_comm.Parameters.AddWithValue("@ID", Request.QueryString["reqid"]);
Submit_comm.Parameters.AddWithValue("@Desc", DescBox.Text);
Submit_comm.Parameters.AddWithValue("@Justif", JustifBox.Text);
Submit_comm.Parameters.AddWithValue("@Priority", PriorityList.SelectedValue);
Submit_comm.Parameters.AddWithValue("@Requested", RelatedBox.Text);
Submit_comm.Parameters.AddWithValue("@Stat", 1);
Submit_conn.Open();
Submit_comm.ExecuteNonQuery();
Submit_comm.Dispose();
Submit_comm = null;
Submit_conn.Close();
get_Description();
Page.ClientScript.RegisterStartupScript(this.GetType(), "Refresh", "ReloadPage();", true);
此功能由彈出式窗口上的按鈕調用,該按鈕在文本框中顯示正在更改的參數內容,該文本框也用於將更改提交回數據庫,但是當我按Submit時,顯示的參數在表格上保持不變,即使我已將其與工作正常的類似代碼進行了比較,我也找不到任何問題。
如果需要,這是我用來顯示和編輯內容的文本框之一:
<asp:TextBox ID="JustifBox" TextMode="MultiLine" runat="server" Width="250" Height="50"></asp:TextBox>
代碼到底有什么問題?
編輯:我忘了提一下,當我跟蹤該函數時,似乎控件的內容在我提交它們時並沒有改變,但是重新提交,就像它們的原始形式一樣。
您在這里提到了兩個問題:
1)執行更新時,數據庫中的字段不會更新
2)用戶界面未使用最新數據更新
首先解決SQL UPDATE查詢。 哪些字段未更新? 將T-SQL查詢復制粘貼到查詢分析器中,然后檢查哪個字段正在更新,哪些不是。 另外,您的代碼對SQL注入是開放的,因此請閱讀有關內容,然后調整代碼。
對於未更新的UI,您需要查看您是否甚至還在用正確的對象填充UI字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.