Winform将select数据写入datagridview
使用组件:
dateTimePicker1、button10、dataGridView3
代码:
private void button10_Click(object sender, EventArgs e)
        {
            this.dataGridView3.Refresh();
            this.dataGridView3.Update();
            this.dataGridView3.EndEdit();
            string datestr = dateTimePicker1.Value.ToString("yyyy-MM-dd");
            string str = ConfigurationManager.ConnectionStrings["OK"].ConnectionString;
            SqlConnection conn = new SqlConnection(str);
            conn.Open();
            SqlCommand cmd = new SqlCommand("SELECT Row_Number() over (order by regdate asc) as RowId,SubContractCode,status,HTmsg,a.RegHumName,zrbm_code,a.regdate FROM CM_SubContract a where a.RegDate>='" + datestr + "' order by a.RegDate desc", conn);//调用执行脚本和连接
//可以使用DataAdapter来填充DataSet。调用DataAdapter的Fill方法,并指定要填充的DataSet表。Fill方法隐式执行DataAdapter的SelectCommand中的SQL查询,查询的结果用于定义DataSet表的结构,并用数据来填充表。
//SqlDataAdapter是 DataSet和 SQL Server之间的桥接器,用于检索和保存数据。会自动打开数据库连接,并执行sql脚本,将查询到的结果填充给DataSet对象。
            SqlDataAdapter dpt = new SqlDataAdapter(cmd);   //创建DataAdapter数据适配器实例   
            DataSet ds = new DataSet();  //创建DataSet实例
            dpt.Fill(ds);//使用DataAdapter的Fill方法(填充),调用SELECT命令,在使用Fill方式时,可以指定DataTable,而不是DataSet
            DataTable dtb = ds.Tables[0];//将关联表的数据填充到dataTable
            dataGridView3.DataSource = dtb;
            this.dataGridView3.AutoGenerateColumns = false;//就是自动产生列的意思,true能够根据数据源的实际情况,自动生成gridview表格列,flase就必须要手动编写gridview控件的columns集合,
            this.dataGridView3.Columns["RowId"].DataPropertyName = dtb.Columns["RowId"].ToString();
            this.dataGridView3.Columns["SubContractCode"].DataPropertyName = dtb.Columns["SubContractCode"].ToString();
            this.dataGridView3.Columns["status"].DataPropertyName = dtb.Columns["status"].ToString();
            this.dataGridView3.Columns["HTmsg"].DataPropertyName = dtb.Columns["HTmsg"].ToString();
            this.dataGridView3.Columns["RegHumName"].DataPropertyName = dtb.Columns["RegHumName"].ToString();
            this.dataGridView3.Columns["regdate"].DataPropertyName = dtb.Columns["regdate"].ToString();
            this.dataGridView3.Columns["zrbm_code"].DataPropertyName = dtb.Columns["zrbm_code"].ToString();
            conn.Close();
        }
 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号