-
Tại sao ado recordset không cho sửa
thucgia > 15-10-15, 08:33 PM
Mình có đoạn load da ta từ recordset vào form, nó kết nối được nhưng tại sao không cho chỉnh sửa nhỉ? giúp mình với, cám ơn
file access -
RE: Tại sao ado recordset không cho sửa
maidinhdan > 15-10-15, 08:39 PM
(15-10-15, 08:33 PM)thucgia Đã viết: Mình có đoạn load da ta từ recordset vào form, nó kết nối được nhưng tại sao không cho chỉnh sửa nhỉ? giúp mình với, cám ơn
file access
Gửi code lên đây, file *.accb không xem được. -
RE: Tại sao ado recordset không cho sửa
ongke0711 > 15-10-15, 10:04 PM
bác đổi cái rs.LockType = adLockOptimistic -
RE: Tại sao ado recordset không cho sửa
thucgia > 15-10-15, 10:47 PM
(15-10-15, 10:04 PM)ongke0711 Đã viết: bác đổi cái rs.LockType = adLockOptimistic
Mã:Option Compare Database
Function get_constrN() As String
Dim myPath As String
Dim myPass As String
myPath = CurrentProject.Path & "\" & "van_de_ado_be.accdb"
myPass = ""
get_constrN = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & myPath & ";Jet OLEDB:Database Password=" & myPass & ";"
End Function
Function LayDanhSach() As ADODB.Recordset
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql As String
Set conn = New ADODB.Connection
If conn.State = adStateClosed Then
conn.ConnectionString = get_constrN
conn.Open
Else
End If
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseServer
rs.CursorType = adOpenStatic 'adOpenUnspecified 'adOpenStatic 'adOpenKeyset 'adOpenDynamic 'adOpenStatic
rs.LockType = adLockOptimistic
rs.Open "SELECT * FROM nx", conn
Set LayDanhSach = rs
End Function
Mã:Option Compare Database
Private Sub btn_add_Click()
'DoCmd.OpenForm "F_nx", , , , , , "new;0"
End Sub
Private Sub btn_del_Click()
'ado_nx.Xoa (Me.id)
Call reload
End Sub
Private Sub btn_edit_Click()
'DoCmd.OpenForm "F_nx", , , , , , "edit;" & Me.id
End Sub
Private Sub Form_Close()
Dim rs As ADODB.Recordset
Set rs = Me.Recordset
Set rs = Nothing
End Sub
Private Sub Form_Open(Cancel As Integer)
Me.reload
End Sub
Sub reload()
Set Me.Recordset = MyAdo.LayDanhSach 'ado_nx.LayDanhSach
End Sub
Vẫn bị read only bạn à!!!! -
RE: Tại sao ado recordset không cho sửa
ongke0711 > 15-10-15, 11:05 PM
Đổi luôn CursorLocation=adUseClient. -
RE: Tại sao ado recordset không cho sửa
thucgia > 15-10-15, 11:46 PM
(15-10-15, 11:05 PM)ongke0711 Đã viết: Đổi luôn CursorLocation=adUseClient.
perfect !!! thk
Mã:Function LayDanhSach() As ADODB.Recordset
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sql As String
Set conn = New ADODB.Connection
If conn.State = adStateClosed Then
conn.ConnectionString = get_constrN
conn.Open
Else
End If
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseClient
rs.Open "SELECT * FROM nx", conn, adOpenStatic, adLockOptimistic
Set LayDanhSach = rs
End Function