0
我正在開發一個在線預訂,並從客戶端頁面我希望他的交易通過gridview查看,但程序返回一個錯誤,它說「其他信息:過程或函數'JoinRoomSubPayment'預計參數'@USERNAME',沒有提供。「從數據庫顯示錶格到gridview
這裏是我的代碼:
SQL:
SELECT USERNAME, FIRST_NAME, LAST_NAME, BIRTHDAY, CONTACT_NUMBER, EMAIL_ADDRESS, HOME_ADDRESS FROM TBL_Client
WHERE USERNAME = @USERNAME
ClassDisplaySummary.cs:
public DataSet _JoinRoomSubPayment(string user){
conn.Open();
SqlCommand cmd = new SqlCommand("JoinRoomSubPayment", conn);
cmd.Parameters.Add("@USERNAME", SqlDbType.VarChar).Value = user;
cmd.ExecuteNonQuery();
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter(cmd);
ds.Clear();
da.Fill(ds, "_JoinRoomSubPayment");
conn.Close();
return ds;}
ClientPage.aspx.cs:
user = Session["username"].ToString();
SummaryGView.DataSource = cd._JoinRoomSubPayment(user).Tables["_JoinRoomSubPayment"];
SummaryGView.DataBind();
任何幫助,將讚賞
您的查詢語句似乎正確,但SP使用可能不適合。考慮在'CommandType.StoredProcedure'之後放置'cmd.ExecuteNonQuery()'。爲什麼在'da.Fill(ds,「_JoinRoomSubPayment」)'中使用'_JoinRoomSubPayment'作爲源表? –
我看不到錯誤,請向我解釋什麼是錯誤?我的SP不合適,爲什麼?謝謝 – Newbie10
在VS項目中使用調試模式,解釋哪一行代碼會引發錯誤。我可以告訴你,由於在將'CommandType'定義爲'SqlCommand'之前所調用的ExecuteNonQuery()'方法不符合你的SP分配,這是沒有意義的。您是否使用'CREATE PROCEDURE JoinRoomSubPayment'來構建存儲過程? –