【发布时间】:2017-03-09 18:46:59
【问题描述】:
我在从查询中获取指定值时遇到问题。我的 GridView 收到一行,但是当我尝试读取该值以将其放入某个变量时,它说我没有任何值。
else if (Request.QueryString.AllKeys.Contains("a"))
{
String sql_user = "SELECT c1.ID, c1.SHORT_NAME, ao1.NAME, c1.REGON FROM (tabel1 c1 LEFT JOIN tabel2 ao1 ON c1.ID = ao1.ID WHERE c1.ID = ?";
connection.OPEN();
OleDbCommand sql_s = new OleDbCommand(sql_user, polaczenie);
sql_s.Parameters.add("?", OleDbType.Integer).Value = Request.QueryString["a"];
OleDbDataAdapter sqlDa = new OleDbDataAdapter(sql_s);
DataTable dt = new DataTable();
sqlDa.Fill(dt);
GRID_VIEW1.DataSource = dt;
GRID_VIEW1.DataBind();
OleDbDataReader customer = sql_s.ExecuteReader();
// i want to get SHORT_NAME so that one below i think dosent work
// but any way it make me an Exception of any value not found but on GridView it shows me clearly one ROW
learerLabel.Text = (String) cmd.ExecuteScalar();
connection.Close();
}
我在很多方面都这样做了,比如一些会话或阅读器,但我现在不记得我的所有尝试,但它总是说我的查询没有价值。我究竟做错了什么?谢谢
【问题讨论】:
-
尝试用
"@p1"替换Parameters.add("?", OleDbType.Integer)中的"?"。
标签: c# visual-studio-2010 webforms executequery