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

Đề tài: Cách lưu dữ liệu từ 1 datagridview vào 2 table khác nhau?

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

    Mặc định Cách lưu dữ liệu từ 1 datagridview vào 2 table khác nhau?

    Chào cả nhà, mình có vấn đề này nhưng tìm hoài trên net bác Google ko chịu chỉ ra, nhờ các bác giúp em tí nhé (em mới học C# mừ )
    Em có 1 datagirdview (dgvSanPham) dữ liệu trong dgvSanPham có được do button Add thêm Sản phẩm vào. Sau khi thêm sản phẩm xong thì chọn button Hoàn tất. Mục đích của em là: khi click button Hoàn tất thì dữ liệu trên dgvSanPham được INSERT vào table1 gồm (hoadonID, ngay, Tongtien) và được INSERT vào table2 gồm (chitietID, hoadonID, sanphamID, soluong, dongia)
    Cái phần đưa dữ liệu vào table1 thì em làm được rồi, OK cả. Nhưng làm sao mình cho vào table2 những nội dung như trên, nhất là cái lấy hoadonID từ cái table1 (ứng với ID vừa mới Add đó)
    Cả nhà ai biết thì hướng dẫn giúp em nha, 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
    11 2008
    Nơi ở
    An Giang
    Bài viết
    502

    hoadonID bạn nhập ở đâu thì từ đó lấy nó ra

  3. #3
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    trước tiên bạn phải lấy được ID là (hoadonID) của Hóa Đơn đó, ứng với mỗi 1 ID (hoadonID) thì bạn duyệt qua dgvSanPham để insert vào Table2 kiểu như vậy :
    PHP Code:
    int ID Order.Insert(hoadonIDngayTongtien);
    for (
    int i 0dgvSanPham .Rows.Counti++)
    {
        
    //insert vào Table2
        
    OrderDetail.Insert(chitietIDIDsanphamIDsoluongdongia);


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

    Trích dẫn Nguyên bản được gửi bởi huuhung Xem bài viết
    hoadonID bạn nhập ở đâu thì từ đó lấy nó ra
    hoadonID này chính là hoadonID của dòng dữ liệu mới vừa INSERT ở dòng lệnh phía trên và chạy tự động trong database chứ ko phải do nhập vào (kiểu int primerkey với indensty +1)
    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 @>

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

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    trước tiên bạn phải lấy được ID là (hoadonID) của Hóa Đơn đó, ứng với mỗi 1 ID (hoadonID) thì bạn duyệt qua dgvSanPham để insert vào Table2 kiểu như vậy :
    PHP Code:
    int ID Order.Insert(hoadonIDngayTongtien);
    for (
    int i 0dgvSanPham .Rows.Counti++)
    {
        
    //insert vào Table2
        
    OrderDetail.Insert(chitietIDIDsanphamIDsoluongdongia);

    Mình hiểu ý bạn, nhưng lấy hoadonID đó như thế nào, code bạn share mình ko hiểu rõ, bạn có thể giải thích rõ hơn chổ
    Code:
    int ID = Order.Insert(hoadonID, ngay, Tongtien);
    Order là sự kiện gì vậy??
    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 @>

  6. #6
    Ngày gia nhập
    06 2011
    Bài viết
    277

    Mặc định Cách lưu dữ liệu từ 1 datagridview vào 2 table khác nhau?

    Trích dẫn Nguyên bản được gửi bởi philipdn Xem bài viết
    Mình hiểu ý bạn, nhưng lấy hoadonID đó như thế nào, code bạn share mình ko hiểu rõ, bạn có thể giải thích rõ hơn chổ
    Code:
    int ID = Order.Insert(hoadonID, ngay, Tongtien);
    Order là sự kiện gì vậy??
    Thanks
    Cái đó chỉ là 1 class bạn ấy khai báo thui bạn àh ^^! ko phải sự kiện j đâu!!

    Bạn làm như bạn ấy nói thì đúng rùi đó và Bạn nên tìm hiểu thêm về cái transaction nhé!!

    Cái này là dùng để phòng trường hợp bị ngắt kết nối giữa chừng thì tất cả dữ liệu đã insert sẽ mất hết ^^!
    Chúc vui vẻ!
    Sống là để cho đi và ...... Nhận lại

  7. #7
    Ngày gia nhập
    11 2008
    Nơi ở
    An Giang
    Bài viết
    502

    Trích dẫn Nguyên bản được gửi bởi philipdn Xem bài viết
    hoadonID này chính là hoadonID của dòng dữ liệu mới vừa INSERT ở dòng lệnh phía trên và chạy tự động trong database chứ ko phải do nhập vào (kiểu int primerkey với indensty +1)
    Như thế bạn chỉ cần SELECT MAX(HoaDonID) rùi dùng phương thức ExecuteScalar() để lấy.

  8. #8
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    Trích dẫn Nguyên bản được gửi bởi philipdn Xem bài viết
    Mình hiểu ý bạn, nhưng lấy hoadonID đó như thế nào, code bạn share mình ko hiểu rõ, bạn có thể giải thích rõ hơn chổ
    Code:
    int ID = Order.Insert(hoadonID, ngay, Tongtien);
    Order là sự kiện gì vậy??
    Thanks
    - Order chỉ là class và Insert là Phuơng thức thực thi việc Insert dữ liệu
    - Biến ID : trả về giá trị mà bạn vừa Insert vào bảng Order tức là cái hoadonID,(lấy được cái hoadonID này rồi thì bạn chỉ việc duyệt qua tất cả sản phẩm và Insert dữ liệu nốt vào Table2 thôi )nếu không giải quyết được bạn up code lên mọi người cùng giúp

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

    Trích dẫn Nguyên bản được gửi bởi nobita8x Xem bài viết
    - Order chỉ là class và Insert là Phuơng thức thực thi việc Insert dữ liệu
    - Biến ID : trả về giá trị mà bạn vừa Insert vào bảng Order tức là cái hoadonID,(lấy được cái hoadonID này rồi thì bạn chỉ việc duyệt qua tất cả sản phẩm và Insert dữ liệu nốt vào Table2 thôi )nếu không giải quyết được bạn up code lên mọi người cùng giúp
    Mình dùng theo cách của huuhung Select MAX(hoadoanID) FROM TblHoaDonBan; rồi dùng phương thức ExcuteScala() thì ra được các hoadonID rùi. Nhưng muốn học hỏi thêm nên các bác cho em xem cái Class Order đó với.
    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 @>

  10. #10
    Ngày gia nhập
    10 2009
    Nơi ở
    Hà Tây
    Bài viết
    85

    class Order đó chứa các phương thức như Insert,Update,Delete,search... bên Form đồ họa thì bạn chỉ việc gọi phương thức cần sử lý thôi,bạn nên tìm hiểu cách viết mô hình 3 lớp nhé...trên diễn đàn có nhiều đấy chúc vui

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

  1. ADO.NET Cách thêm dữ liệu từ nhiều table vào Datagridview
    Gửi bởi supervip_90 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 32
    Bài viết cuối: 20-03-2012, 02:41 PM
  2. MS SQL Lỗi Không thể liên kết 2 table với nhau
    Gửi bởi boykutemax trong diễn đàn Thắc mắc Microsoft SQL Server & Microsoft Access
    Trả lời: 1
    Bài viết cuối: 25-12-2011, 09:50 AM
  3. Dùng Datagridview để vẽ table như thế nào?
    Gửi bởi minhtriit trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 16-12-2010, 03:18 PM
  4. làm thế nào thêm dữ liệu vào table hiện lên datagridview luôn
    Gửi bởi chobanchotoi trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 24-12-2009, 01:20 PM
  5. Sự khác nhau giữa System Service Dispatch Table và System Service Descriptor Table ?
    Gửi bởi vietwow trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 6
    Bài viết cuối: 20-07-2009, 08:38 AM

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