Lỗi khi thêm dữ liệu vào CSDL Access

tronggiapt

New Member
Hội viên mới
Mình có một vấn đề như sau: Khi thêm một bản ghi vào trong CSDL dùng cách sau

Set db = currentDB
Set rs = db.OpenRecordset("tblPhuongAnKT")
rs.AddNew
rs.Fields("NgayThangNam").Value = txtNgayThangNam
rs.Fields("TenKhachHang").Value = txtTenKhachHang
rs.Fields("TenHang").Value = txtTenHang
rs.Fields("MaHang").Value = txtMaHang
rs.Fields("SoDangKy").Value = txtSoDangKy
rs.Fields("KichThuocVi").Value = txtKichThuocVi
rs.Fields("GiayIn").Value = txtGiayIn
rs.Fields("DacTinh").Value = txtDacTinh
rs.Fields("KhoGiay").Value = txtKhoGiay
rs.Fields("BoTriMay").Value = txtBoTriMay
rs.Fields("LoaiOng1").Value = txtLoaiOng1
rs.Fields("ChuViOng1").Value = txtChuViOng1
rs.Fields("Mau11").Value = txtMau11
rs.Fields("Mau12").Value = txtMau12
rs.Fields("LoaiOng2").Value = txtLoaiOng2
rs.Fields("ChuViOng2").Value = txtChuViOng2
rs.Fields("Mau21").Value = txtMau21
rs.Fields("Mau22").Value = txtMau22
rs.Fields("YeuCauKT").Value = txtYeuCauKT
rs.Fields("GhiChu").Value = txtGhiChu
rs.Fields("MauChuan").Value = oleMauChuan
rs.Fields("SoMau").Value = n
rs.Update
rs.Close

Câu lệnh trên được viết trên sự kiện “cmdLuu_click()” trên form nhập dữ liệu của Access. Các câu lệnh thực hiện thì OK nhưng có một vấn đề xảy ra là khi số bản ghi trong bảng nhiều (trên 20 bản ghi) thì một số bản ghi tự động bị xoá mất dữ liệu hoặc bị bản ghi mới add vào đè lên. Bạn nào đã có kinh nghiệm xử lý vấn đề này xin chỉ giúp mình với.
Thank very much.
 
Ðề: Lỗi khi thêm dữ liệu vào CSDL Access

Mình có một vấn đề như sau: Khi thêm một bản ghi vào trong CSDL dùng cách sau

Set db = currentDB
Set rs = db.OpenRecordset("tblPhuongAnKT")
rs.AddNew
rs.Fields("NgayThangNam").Value = txtNgayThangNam
rs.Fields("TenKhachHang").Value = txtTenKhachHang
rs.Fields("TenHang").Value = txtTenHang
rs.Fields("MaHang").Value = txtMaHang
rs.Fields("SoDangKy").Value = txtSoDangKy
rs.Fields("KichThuocVi").Value = txtKichThuocVi
rs.Fields("GiayIn").Value = txtGiayIn
rs.Fields("DacTinh").Value = txtDacTinh
rs.Fields("KhoGiay").Value = txtKhoGiay
rs.Fields("BoTriMay").Value = txtBoTriMay
rs.Fields("LoaiOng1").Value = txtLoaiOng1
rs.Fields("ChuViOng1").Value = txtChuViOng1
rs.Fields("Mau11").Value = txtMau11
rs.Fields("Mau12").Value = txtMau12
rs.Fields("LoaiOng2").Value = txtLoaiOng2
rs.Fields("ChuViOng2").Value = txtChuViOng2
rs.Fields("Mau21").Value = txtMau21
rs.Fields("Mau22").Value = txtMau22
rs.Fields("YeuCauKT").Value = txtYeuCauKT
rs.Fields("GhiChu").Value = txtGhiChu
rs.Fields("MauChuan").Value = oleMauChuan
rs.Fields("SoMau").Value = n
rs.Update
rs.Close

Câu lệnh trên được viết trên sự kiện “cmdLuu_click()” trên form nhập dữ liệu của Access. Các câu lệnh thực hiện thì OK nhưng có một vấn đề xảy ra là khi số bản ghi trong bảng nhiều (trên 20 bản ghi) thì một số bản ghi tự động bị xoá mất dữ liệu hoặc bị bản ghi mới add vào đè lên. Bạn nào đã có kinh nghiệm xử lý vấn đề này xin chỉ giúp mình với.
Thank very much.


Lỗi là cái chắc. Nếu muốn AddNew thì làm như thế này :
C1:

PHP:
....
      rs!NgayThangNam = txtNgayThangNam
      rs!TenKhachHang = txtTenKhachHang
      ....

C2

PHP:
...
     rs.Fields(0) = txtNgayThangNam
     rs.Fields(1) = txtTenKhachHang
     ....

Thân mến
 
Ðề: Lỗi khi thêm dữ liệu vào CSDL Access

Mình có một vấn đề như sau: Khi thêm một bản ghi vào trong CSDL dùng cách sau

Set db = currentDB
Set rs = db.OpenRecordset("tblPhuongAnKT")
rs.AddNew
rs.Fields("NgayThangNam").Value = txtNgayThangNam
rs.Fields("TenKhachHang").Value = txtTenKhachHang
rs.Fields("TenHang").Value = txtTenHang
rs.Fields("MaHang").Value = txtMaHang
rs.Fields("SoDangKy").Value = txtSoDangKy
rs.Fields("KichThuocVi").Value = txtKichThuocVi
rs.Fields("GiayIn").Value = txtGiayIn
rs.Fields("DacTinh").Value = txtDacTinh
rs.Fields("KhoGiay").Value = txtKhoGiay
rs.Fields("BoTriMay").Value = txtBoTriMay
rs.Fields("LoaiOng1").Value = txtLoaiOng1
rs.Fields("ChuViOng1").Value = txtChuViOng1
rs.Fields("Mau11").Value = txtMau11
rs.Fields("Mau12").Value = txtMau12
rs.Fields("LoaiOng2").Value = txtLoaiOng2
rs.Fields("ChuViOng2").Value = txtChuViOng2
rs.Fields("Mau21").Value = txtMau21
rs.Fields("Mau22").Value = txtMau22
rs.Fields("YeuCauKT").Value = txtYeuCauKT
rs.Fields("GhiChu").Value = txtGhiChu
rs.Fields("MauChuan").Value = oleMauChuan
rs.Fields("SoMau").Value = n
rs.Update
rs.Close

Câu lệnh trên được viết trên sự kiện “cmdLuu_click()” trên form nhập dữ liệu của Access. Các câu lệnh thực hiện thì OK nhưng có một vấn đề xảy ra là khi số bản ghi trong bảng nhiều (trên 20 bản ghi) thì một số bản ghi tự động bị xoá mất dữ liệu hoặc bị bản ghi mới add vào đè lên. Bạn nào đã có kinh nghiệm xử lý vấn đề này xin chỉ giúp mình với.
Thank very much.

Bạn bỏ phần .Value đi thử coi
rs.Fields("NgayThangNam").Value = txtNgayThangNam
=> rs.Fields("NgayThangNam") = txtNgayThangNam
 

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top