Từ 1 tới 3 trên tổng số 3 kết quả

Đề tài: Lỗi kiểu datetime trong SQL2005 trả về giá trị 1/1/1900 12:00AM

  1. #1
    Ngày gia nhập
    08 2011
    Bài viết
    38

    Mặc định Lỗi kiểu datetime trong SQL2005 trả về giá trị 1/1/1900 12:00AM

    Chào cả nhà, mình có bị mắc một lỗi về INSERT DateTime vào trong database (cột NgayBan có kiểu datetime).
    Câu lệnh sql của mình như sau:

    Code:
    string Add = "INSERT INTO dbo.TblHoaDonBan (KhachHangId, NgayBan, TongTien) VALUES (" + cbbTenKH.SelectedValue + ", " + DateTime.Now.ToShortDateString() + ", " + Decimal.Parse(txtTongTien.Text) + ")";
    Khi dùng phương thức
    Code:
    MessageBox.Show(DateTime.Now.ToShortDateString());
    thì ra kết quả rất ok (ví dụ hôm nay thì ra 8/26/2011)
    Nhưng trong sql database thì lại ra 1/1/1900 12:00AM
    Mọi người tư vấn giúp mình nhé.
    Thanks
    C# một phần tất yếu của cuộc sống
    Cà phê xem phim 3D Đà Nẵng - http://3dsmartcoffee.com.vn
    <@ Bản đồ dẫn đường - Click here @>

  2. #2
    Ngày gia nhập
    04 2010
    Bài viết
    1,534

    8/26/2011 có nghĩa là 8 chia 26 chia 2011 => kq = 0

    ngày 0 tức là ngày 1/1/1900 12:00AM

    nạp số cho SQL thì nó tự động làm toán, lấy kết quả và đổi thành ngày

    Đóng cái này
    DateTime.Now.ToShortDateString()
    giữa hai dấu phẩy ngươc. Tức là nạp string chứ không phải số.
    Nếu environment set đúng cách hiển thị ngày thì sẽ nạp được. Nếu không set đúng thì phải tìm hiểu cách chỉnh sao cho đúng. (Nếu không biết cách chỉnh thì đừng làm việc với ngày, nguy hiểm vô cùng)

  3. #3
    Ngày gia nhập
    12 2010
    Bài viết
    683

    Trích dẫn Nguyên bản được gửi bởi VoTichSu Xem bài viết
    8/26/2011 có nghĩa là 8 chia 26 chia 2011 => kq = 0

    ngày 0 tức là ngày 1/1/1900 12:00AM

    nạp số cho SQL thì nó tự động làm toán, lấy kết quả và đổi thành ngày

    Đóng cái này
    DateTime.Now.ToShortDateString()
    giữa hai dấu phẩy ngươc. Tức là nạp string chứ không phải số.
    Nếu environment set đúng cách hiển thị ngày thì sẽ nạp được. Nếu không set đúng thì phải tìm hiểu cách chỉnh sao cho đúng. (Nếu không biết cách chỉnh thì đừng làm việc với ngày, nguy hiểm vô cùng)
    Mình đã xử lý cho chủ thớt rồi!!

    Chỉ một dòng code duy nhất!

Các đề tài tương tự

  1. Đồng bộ dữ liệu trong SQL2005
    Gửi bởi vatelsoftware trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 3
    Bài viết cuối: 25-09-2013, 07:39 PM
  2. Không tạo mới Database trong SQL2005
    Gửi bởi vltd trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 3
    Bài viết cuối: 02-11-2012, 06:58 AM
  3. Database muốn định dạng datetime chỉ có tháng năm trong csdl SQL2005
    Gửi bởi tuongvi_nd trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 8
    Bài viết cuối: 05-06-2011, 07:25 PM
  4. Lỗi nhập datetime vào csdl bị chuyển thành 01/01/1900
    Gửi bởi npq_a11 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 03-06-2011, 07:38 PM
  5. datetime trong csdl va datetime trong datagridview
    Gửi bởi thaivinhledang trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 4
    Bài viết cuối: 01-06-2010, 09:50 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn