Các chủ đề trước đã trình bày:
-
-
Trong chủ đề này, mình sẽ trình bày cách để kết nối với cơ sở dữ liệu và lấy thông tin từ nó.
1. Kết nối:
2. Lấy dữ liệu
2.1 Lấy tất cả các cột trong bảng:
Cụ thể hãy xem ví dụ dưới đây:
Ta có bảng dữ liệu như sau:
Kết quả chạy code là:
-
Bạn cần đăng nhập để thấy link
-
Bạn cần đăng nhập để thấy link
Trong chủ đề này, mình sẽ trình bày cách để kết nối với cơ sở dữ liệu và lấy thông tin từ nó.
1. Kết nối:
Mã:
Public cnn As New ADODB.Connection
Sub Moketnoi()
Set cnn = New ADODB.Connection
Dim strCNString As String
strCNString = "C:\Users\jpnfriend.net\Desktop\VBA\NewDB33.mdb"
With cnn
.Provider = "Microsoft.ACE.OLEDB.12.0" 'Access truoc day la: "Microsoft Jet 4.0 OLE DB Provider"
.ConnectionString = linkdb
.Properties("Jet OLEDB:Database Password") = "1234"
.Open
End With
End Sub
2.1 Lấy tất cả các cột trong bảng:
Mã:
SELECT * FROM TenBang
Ta có bảng dữ liệu như sau:
Bạn cần đăng nhập để thấy hình ảnh
Mã:
Sub ketnoivalaydulieu()
Dim cnn As Object: Dim rst As Object
Dim lsSQL As String
Dim linkdb As String
Dim arr As Variant
Set cnn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
linkdb = "C:\VBA\NewDB33.mdb"
With cnn
.Provider = "Microsoft.ACE.OLEDB.12.0" 'Access truoc day la: "Microsoft Jet 4.0 OLE DB Provider"
.ConnectionString = linkdb
.Properties("Jet OLEDB:Database Password") = "1234"
.Open
End With
lsSQL = "SELECT * " & _
"FROM Test"
rst.Open lsSQL, cnn
If rst.EOF Then
MsgBox "Khong tim thay du lieu nao"
Else
arr = rst.GetRows
End If
Set rst = Nothing
cnn.Close
Set cnn = Nothing
End Sub
Bạn cần đăng nhập để thấy hình ảnh