string uname = proname.Text.ToString();
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["pubconn"].ConnectionString);
SqlCommand cmd = new SqlCommand("select * from stock where s_name='" + uname + "'", conn);
conn.Open();
int result=Convert.ToInt32(cmd.ExecuteScalar());
表stock字段s_name下有“诺基亚手机”、“西门子手机”、“联想手机”…… 只有在TextBox中是“诺基亚手机”result才得到的是1 其它的为什么都是零?
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["pubconn"].ConnectionString);
SqlCommand cmd = new SqlCommand("select * from stock where s_name='" + uname + "'", conn);
conn.Open();
int result=Convert.ToInt32(cmd.ExecuteScalar());
表stock字段s_name下有“诺基亚手机”、“西门子手机”、“联想手机”…… 只有在TextBox中是“诺基亚手机”result才得到的是1 其它的为什么都是零?
因为这个是获得SQL语句的影响条数。。
检查查询出来的结果的第一行第一列的内容是什么
在sql查询分析其里面看看
你直接去数据库查查看select * from stock where s_name='联想手机'
如果这么查没有就是没有
如果有,就断点看看string uname = proname.Text.ToString()的uname有没数据?
没数据当然就查不到了
他只返回一个记录 很明显他返回的是表中第一行的编号ID要返回的多,要这样string uname = proname.Text.ToString();
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["pubconn"].ConnectionString);
SqlCommand cmd = new SqlCommand("select * from stock where s_name='" + uname + "'", conn);
conn.Open();
SqlDataReader dr=cmd.ExecuteReader();
while(dr.Read())
{
xx=dr[0];
xx1=dr[1];
}或者用
SqlDataAdapter adt=new SqlDataAdapter(cmd);
DataSet ds=new DataSet();
adt.Fill(ds);
ds.Tables[0].Rows[rowindex][colindex]也可以取值
select * from stock where s_name='诺基亚手机'在sql2005上执行看看结果是什么