-
Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
dannynguyen1980 > 02-01-12, 05:33 PM
Các pác cho tôi hỏi code check 1 record tồn tại trong bảng sử dụng ADO (dùng trong Access Project) để cập nhật mới nếu chưa tồn tại record này, ngược lại không cập nhập. Cụ thể như sau:
Tôi có table A (ID (primary key), TENHV, NGAYSINH, GIOI TINH, DIACHI) & table B cũng bao gồm các trường trên. Tôi muốn gộp 2 table này lại với nhau bằng Tuy nhiên, 2 table này có những record trùng nhau. Làm thế nào để gộp 2 table A & B lại với nhau sử dụng ADO? Bác nào có kinh nghiệm xin vui lòng chỉ giúp.
Xin cảm ơn nhiều!
P/S: Tôi đã sử dụng code sau và đương nhiên bị báo lỗi nếu có 2 record trùng nhau ở 02 table:
------------------------------------------------------
Private Sub Bosunghocvien_Click()
Dim stDocName as String
'Set warning off
DoCmd.SetWarnings False
stDocName = "SP_Danhsachhocvien"
DoCmd.OpenStoredProcedure stDocName, acViewNormal, acEdit = 1
'Set warning on
DoCmd.SetWarnings True
MsgBox "Da bo sung danh sach hoc vien moi", vbOKOnly, "Thong bao"
End Sub
------------------------------------ -
RE: Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
Noname > 02-01-12, 06:08 PM
Ý tưởng để biết record tồn tại hay không là bạn tạo 1 query với các điều kiện tương ứng, nếu query có record count >0 thì có tồn tại, ngược lại thì bạn dùng lệnh update được rồi! -
RE: Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
haquocquan > 02-01-12, 08:21 PM
Đơn giản bạn dùng APPEND là xong. Vì bạn có ID là primary, nó sẽ không append những record đã trùng ID. -
RE: Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
dannynguyen1980 > 03-01-12, 03:14 PM
(02-01-12, 08:21 PM)haquocquan Đã viết: Đơn giản bạn dùng APPEND là xong. Vì bạn có ID là primary, nó sẽ không append những record đã trùng ID.
Tôi đã thử cách này nhưng access project không cho append (kể cả như record không trùng)?! Nếu là access thuần túy thì OK ngay.
Dủ sao cũng cảm ơn bác nhiều! -
RE: Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
Noname > 03-01-12, 09:15 PM
(03-01-12, 03:14 PM)dannynguyen1980 Đã viết:
(02-01-12, 08:21 PM)haquocquan Đã viết: Đơn giản bạn dùng APPEND là xong. Vì bạn có ID là primary, nó sẽ không append những record đã trùng ID.
Tôi đã thử cách này nhưng access project không cho append (kể cả như record không trùng)?! Nếu là access thuần túy thì OK ngay.
Dủ sao cũng cảm ơn bác nhiều!
Nhưng bạn vẫn có thể run query Insert thông qua run command mà! -
RE: Hỏi code check 1 record tồn tại trong bảng sử dụng ADO
bomnhauag > 04-01-12, 02:31 PM
(03-01-12, 03:14 PM)dannynguyen1980 Đã viết:
(02-01-12, 08:21 PM)haquocquan Đã viết: Đơn giản bạn dùng APPEND là xong. Vì bạn có ID là primary, nó sẽ không append những record đã trùng ID.
Tôi đã thử cách này nhưng access project không cho append (kể cả như record không trùng)?! Nếu là access thuần túy thì OK ngay.
Dủ sao cũng cảm ơn bác nhiều!
Vẫn được bạn ah.....
Bạn tạo 1 Query Append, đặt cho nó 1 cái tên, rồi dùng Docmd.openquery mà thực hiện nó, ok lắm...
Private Sub Command0_Click()
DoCmd.SetWarnings False
DoCmd.OpenQuery "Q1", acViewNormal, acEdit
DoCmd.SetWarnings True
MsgBox "Xong"
End Sub