Xử lý ngày tháng trong SQLSEVER và sử dụng DateTimePicker C#

Saturday, May 23, 2015
Xử lý ngày tháng trong lập trình giữa C# và SQL có vẻ khó khăn với một số bạn mới làm quen, nhưng mình tìm ra cách đơn giản để các bạn thực hiện mà vẫn làm được việc select được dữ liệu mong muốn.

Tìm kiếm ngày tháng trong SQL

Trong cơ sở dữ liệu sql các bạn tạo 1 trường ngày tháng có kiểu dữ liệu là datetime . Sau đó các bạn cứ nhập bình thường .
Sau đó chúng ta thực hiện việc select thử bằng câu select sau đây.
Select * from TBLTHONGKE where CONVERT(varchar, ngaygoi, 103)='18/05/2015'

hàm Convert sẽ trả về kiểu ngày tháng theo địa phương chúng ta sử dụng 103 là kiểu dd/mm/yyyy

Tìm kiếm ngày tháng trong C#

Tạo câu truy vấn cũng giống trong SQL nhưng chúng ta sẽ sử dụng datetimepicker để lấy dữ liệu cho nó chuyên nghiệp không cần dùng nhiều select box để làm.
Các bạn vẽ 1 cái datetimePicker và thực hiện sự kiện SelectedIndexChanged của nó .Khi bạn tác động vào datetimePicker nó sẽ thực hiện.
Để lấy được ngày tháng trong datetimePicker nó cũng đơn giản thôi.
dateTimePicker1.Value.ToString("dd/MM/yyyy")

Các bạn chú ý .ToString(dd/MM/yyyy) là trả về kiểu định dạng như chúng ta mới thực hiện hàm convert của SQL nhưng MM phải viết hoa thì nó mới hoạt động đúng nhé.

Hàm select ngày tháng hoàn chỉnh

dt = bs.HienThiDuLieu("select * from tblthongke where CONVERT(varchar, ngaygoi, 103)='"+dateTimePicker1.Value.ToString("dd/MM/yyyy")+"'");