string name = this.TextBox1.text;string sql = "select IndustryId from TABLE1 where IndustryName='"+ name +"'";如何才能取出 IndustryId并存放到一个定义的变量里呢 大侠指点!!(假如我定义一个 int id; 怎么把查询出来的IndustryId存放到id里边呢??)急!

解决方案 »

  1.   

    先将运行结果放在DataSet 或DataReader中,然后再将DataSet 或Reader中的值给id赋值。
    楼主应仔细学习一下ado.net的基础知识。
      

  2.   

                string connstring = "";
                SqlConnection conn = new SqlConnection(connstring);
                conn.Open();
                string name = this.TextBox1.text;             string sql = "select IndustryId from TABLE1 where IndustryName='"+ name +"'";             string id;//要存储的ID变量
                SqlCommand cmd = new SqlCommand(sql, conn);
                SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                if (reader.Read()) {
                    id = Convert.ToString(reader["IndustryId"]);
                }
                conn.Close();
                conn.Dispose();
      

  3.   

    这样好象不行哦.. 运行到 id = Convert.ToString(reader["IndustryId"]);那就出问题了.
    就弹出一个对话框 显示 "Industry ";
      

  4.   

    跟踪看一下reader里面的值。reader["IndustryId"].
      

  5.   

    如果获取单个值的话使用,SqlCommand.ExecuteScalar();性能更好
      

  6.   

    SQL 查询出来的是一个记录集 不一定是只有一条记录呀 
    放在 table 或 reader 里头 ,自己用程序控制咯
      

  7.   

    SqlCommand.ExecuteScalar() 返回的是 object 你直接name = (string)SqlCommand.ExecuteScalar();试试看
      

  8.   

    学校不该教C#,应该教C++。
    C#把啥都封装了,学了C#的大把人还是啥都不懂。毕业久了,你就会知道大学课本教的并不是完全脱离实际一点没用。
      

  9.   

    应先判断一下是否没有记录或者字段值为DBNull