C#从SQL Server数据库查询选定日期范围内的相关数据—DateTimePicker控件

利用两个DateTimePicker控件来选定一个日期范围作为查询条件,从数据库中获取这段时间内的数据

一、SQL语句使用between and来查询选定日期范围内的相关数据

效果展示:
在这里插入图片描述
实现代码:

        // SQL语句使用between and,查询选定日期范围内相关数据
        private void btnSearch_Click(object sender, EventArgs e)
        {
            //连接sql server数据库           
            string connString = "server=.;database=TBWRIMS;uid=test;pwd=test;connect timeout=5";
            SqlConnection pSqlConnection = new SqlConnection(connString); 
            pSqlConnection.Open();

            string sql = "select * from TH5 where date between'" + dtpStart.Value.ToString("yyyy-MM-dd") + "'" +
                         "and'" + dtpEnd.Value.ToString("yyyy-MM-dd") + "'";
            SqlDataAdapter pSqlDataAdapter = new SqlDataAdapter(sql,connString);
            DataSet pDataSet = new DataSet();
            pSqlDataAdapter.Fill(pDataSet);
            DataTable pDataTable = pDataSet.Tables[0];
            //自定义datagridview列名
            pDataTable.Columns[0].ColumnName = "日期";
            pDataTable.Columns[1].ColumnName = "站点";
            pDataTable.Columns[2].ColumnName = "水位(米)";
            //绑定数据源
            dgv.DataSource = pDataTable;

            pSqlConnection.Close();
        }

二、SQL语句使用datediff函数来查询选定日期范围内的相关数据

效果展示:
在这里插入图片描述
实现代码:

        //SQL语句使用datediff函数,查询选定日期范围内相关数据
        private void btnSearch2_Click(object sender, EventArgs e)
        {
            //获取DateTimePicker日期
            DateTime dts = Convert.ToDateTime(dtpStart.Text);
            DateTime dte = Convert.ToDateTime(dtpEnd.Text);

            //连接sql server数据库           
            string connString = "server=.;database=TBWRIMS;uid=test;pwd=test;connect timeout=5";
            SqlConnection pSqlConnection = new SqlConnection(connString);
            pSqlConnection.Open();            

            //根据获得的日期参数,查找出指定日期范围内的数据,其中date为数据库字段名称。
            string sql = "select * from TH5 where datediff(day,@dts,date)>=0"
                        +"and datediff(day,date,@dte)>=0";            
            SqlParameter[] sp = new SqlParameter[]{
                new SqlParameter("@dts",dts),
                new SqlParameter("@dte",dte)
            };
            SqlDataAdapter sda = new SqlDataAdapter(sql, connString);
            sda.SelectCommand.Parameters.AddRange(sp);
            DataTable dt = new DataTable();
            sda.Fill(dt);
            //自定义datagridview列名
            dt.Columns[0].ColumnName = "日期";
            dt.Columns[1].ColumnName = "站点";
            dt.Columns[2].ColumnName = "水位(米)";
            //绑定数据源
            dgv.DataSource = dt;

            pSqlConnection.Close();            
        }
  • 10
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值