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

Đề tài: Định dạng kiểu Datetime không đưa được xuống DB

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

    Mặc định Định dạng kiểu Datetime không đưa được xuống DB

    MÌnh có cái hàm thêm nhân viên. Trong đó có hai trường ngày tháng là: ngày ký hợp đồng và ngày vào làm.
    Trên máy của mình thì khi thêm vào lưu xuống DB chẳng có vấn đề gì. Test ở một số máy cũng vậy. Nhưng khi mang về nhà chạy thử thì nó báo lỗi là nó không thể chuyển đổi từ kiểu char sang kiểu datetime đc. Hichic
    Qua tìm hiểu thì được biết cái lỗi đó tùy từng kiểu định dạng ngày tháng trên từng máy. Vậy xin hỏi có cách nào khắc phục không. Chứ để vậy mang cho end -user thì họ biết sao mà lần. Dưới đây là đoạn code của mình.
    Visual C# Code:
    1.  int ret = clsnv2.AddNhanVien(txtMaNV.Text, txtTenNV.Text,
    2.                           dtpNgaySinh.Value, txtNoiSinh.Text,
    3.                           cmbGioiTinh.Text.ToString(),
    4.                           hinh,txtDiacHi.Text, txtDienThoai.Text,
    5.                           txtEmail.Text,
    6.                           dtpNgayKyHD.Value, txtThoiHanHD.Text,
    7.                           dtpNgayLam.Value,cmbHonNhan.Text.ToString(),
    8.                           txtChuyenMon.Text, cmbMSBaoHiem.SelectedValue.ToString(),
    9.                           cmbPhongBan.SelectedValue.ToString(),
    10.                          cmbMSLuong.SelectedValue.ToString(),
    11.                          int.Parse(cmbHeSoLuong.Text.ToString()));
    Đã được chỉnh sửa lần cuối bởi Xahara : 30-08-2008 lúc 09:27 AM.

  2. #2
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Sao bạn không chuyển kiểu datetime thành kiểu string và lưu xuống csdl bằng kiểu string luôn cho tiện.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  3. #3
    Ngày gia nhập
    08 2008
    Bài viết
    6

    Ah, do mình còn một số hàm tính toán ngày tháng nữa. Làm như bạn nói sau này mất công convert lắm.

  4. #4
    Ngày gia nhập
    07 2008
    Nơi ở
    /media/Anime
    Bài viết
    2,288

    Mình nghĩ kiểu string là tốt nhất vì nếu bạn xài csdl của access thì bạn có thể sẽ bị lỗi khi đem qua máy khác vì kiểu định dạng ngày của access phụ thuộc vào hệ điều hành. Còn nếu bạn xài sql hay oracle thì không bị nhưng bạn phải set lại định dạng ngày cho csdl. Hơn nữa convert từ string qua datetime cũng đâu có mất công nhiều lắm, có hàm sẵn mà.
    Càng yêu mèo thì mèo càng mập. Mèo càng mập ta lại càng yêu.

  5. #5
    Ngày gia nhập
    03 2008
    Bài viết
    43

    uh, nói nhưng mecon thì đúng rồi đó bạn, bạn nên convert qua string thì tốt hơn, đem qua máy nào cũng chạy đc. Nếu là bạn dùng csdl là sql hay oracle thì chỉ dùng hàm này là đc chứ gì. convert(char(10),lấy giá trị ngày,103). nếu bạn ko hiểu thì trong bộ cài sql có thư viện Books online đấy, bạn chỉ cần mở ra vào tìm từ khóa convert là ok.
    Chúc thành công.

  6. #6
    Ngày gia nhập
    08 2008
    Bài viết
    6

    Mặc định Định dạng kiểu Datetime không đưa được xuống DB

    Ở dưới DB mình để kiểu dữ liệu là Datetime. Trên form mình lấy dữ liệu từ datepic. Để insert vào DB khi dùng ở những máy khác, mình dùng thêm hàm comvert trong câu lệnh insert. Okie, insert thành công. Nhưng đến câu lệnh Update thì không được vì trong điều kiện Update của mình có trường ngày tháng. Sau khi convert nó so sánh với trường ngày tháng trong DB không phù hợp với nhau. vậy là khỏi Update, delete cũng vậy. Nếu không convert trong câu lệnh Update và Delete cũng vậy.

    Các bạn có thể nói rõ hơn giúp mình một chút không? Cách khắc phục hiện tượng này đó.

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

  1. Chuyển string thành Datetime bị lỗi String was not recognized as a valid DateTime?
    Gửi bởi nguyenvantien87 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 11
    Bài viết cuối: 19-06-2013, 11:17 AM
  2. Làm thế nào so sánh 1 datetime với 2 datetime ?
    Gửi bởi robinsonit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 13-10-2012, 05:10 PM
  3. Các xử lý về hàm datetime
    Gửi bởi nguyen hoc trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 7
    Bài viết cuối: 04-10-2011, 08:04 PM
  4. Kiểm tra định dạng datetime
    Gửi bởi pvtam2a trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 11
    Bài viết cuối: 21-05-2011, 03:19 AM
  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