日期:2014-05-19  浏览次数:20788 次

我刚入公司,有几个初级问题急等解决,得到正解立即结贴
StringBuilder   sqlUN   =   new   System.Text.StringBuilder( " ");
                        sqlUN.Append( "SELECT   ");
                        sqlUN.Append( "WORK.NAME   ");
                        sqlUN.Append( "FROM   ");
                        sqlUN.Append( "WORK   ");
                        sqlUN.Append( "WHERE   ");
                        sqlUN.Append( "WORK.ID   ");
                        sqlUN.Append( "= ");
                        sqlUN.Append( "250 ");//ID号是唯一
                       

                        DBConnection   db   =   new   DBConnection();//一个通用连接的类
                        SqlConnection   conn;
                        conn   =   db.GetConnection();
                       
                        conn.Open();

                        SqlCommand   cmd   =   new   SqlCommand(sqlUN.ToString(),conn);
                        cmd.ExecuteNonQuery();

                        DataSet   ds   =   new   DataSet();
                        SqlDataAdapter   da   =   new   SqlDataAdapter(sqlUN.ToString(),conn);
                        da.Fill(ds, "table ");
                        this.dataGridView1.DataSource   =   ds;
                       
                        conn.Close();


就是显示WORK的空表(显示每一列的列名ID、NAME、DEPART等,没有元素)
我是想输出那个ID人的名字放到dataGridView中

------解决方案--------------------
如果是只是一个值,你用SqlCommand.ExecuteScalar 方法就足够了
------解决方案--------------------
再有就是因为你返回的是一个值,这个用DataGridView来显示就不太合适了,DataGridView用来显示的是一个至少二维的表,如果只是一个值,你可以使用TextBox,Label等就足够了,比如:

SqlCommand cmd = new SqlCommand(sqlUN.ToString(),conn);
object obj = cmd.ExecuteScalar();
if (obj!=null)
{
this.txtName.Text = obj.ToString();
}
------解决方案--------------------
没有明白lz的意思,呵呵
------解决方案--------------------