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'来构建存储过程? –