Kết nối và truy vấn cơ sở dữ liệu CSV bằng Visual Basic 6.0

freeway2207

Thành viên sắp được phong Thành viên Năng động
Tham gia
18/2/11
Bài viết
37
Điểm thành tích
8
Tuổi
38
Dữ liệu CSV là loại dữ liệu đơn giản, chứa trong file text với đuôi là *.csv. Dữ liệu CSV (file *.csv) khi mở bằng Notepad thì mỗi bản ghi (record) được đặt trên một hàng và mỗi trường (field) được năng cách nhau bởi một dấu phẩy. Ví dụ:
Mã:
STT,HoTen,SinhNgay,QueQuan
1,Dao Anh Dat,7/22/1985,Hai Duong
2,Phan Dang Dung,11/10/1987,Nam Dinh
3,Bui Van Thanh,11/12/1988,Hung Yen
Còn khi mở trên Excel thì mỗi bản ghi vẫn là một dòng tuy nhiên mỗi cột Excel thì lại tương ứng với một trường của bản ghi.
Visual Basic 6 (VB6) cho ta sự lựa chọn về kỹ thuật lập trình với database, cơ bản là dùng DAO (đây là kỹ thuật đã cũ) hoặc dùng ADO (ActiveX Data Object). Với ADO cho phép ta làm việc với mọi nguồn dữ liệu (data sources), không nhất thiết là Access Database hay ODBC.
Khi dùng VB6 thao tác với dữ liệu CSV cần hiểu mỗi file CSV tương đương với 1 Table trong Database Access vì thế khi khai báo nguồn dữ liệu (Data source) chỉ khai báo đến cấp Folder chứ các file (bảng) dữ liệu.

Đoạn chương trình lọc và hiển thị (select) dữ liệu CSV:
Mã:
Private Sub cmdRead_Click()
    Set con = CreateObject("ADODB.Connection")
    Set Rec = CreateObject("ADODB.Recordset")
    
    con.CursorLocation = 3
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=" & App.Path & "\" & ";" & _
              "Extended Properties=""text;HDR=YES;FMT=Delimited"""
    
    Rec.Open "SELECT * FROM DuLieu.csv", _
              con, 3, 3, adCmdText
    
    Set DataGrid1.DataSource = Rec
End Sub
vbdatacsv1.jpg


Đoạn chương trình chèn thêm bản ghi (insert) vào dữ liệu CSV
Mã:
Private Sub cmdWrite_Click()
    Const adCmdText = &H1
    Dim sql As String
    Set con = CreateObject("ADODB.Connection")
    Set Rec = CreateObject("ADODB.Recordset")
    
    con.CursorLocation = 3
    con.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=" & App.Path & "\" & ";" & _
              "Extended Properties=""text;HDR=YES;FMT=Delimited"""
              
    sql = "INSERT INTO Dulieu.csv " & _
            "(STT, HoTen, SinhNgay, QueQuan) " & _
            " VALUES (" & _
            "'" & txtSTT & "', " & _
            "'" & txtTen & "', " & _
            "'" & txtNSinh & "', " & _
            "'" & txtQue & "'" & _
            ")"
    
    con.Execute sql, , adCmdText
    
    Rec.Open "SELECT * FROM DuLieu.csv", _
              con, 3, 3, adCmdText
    
    Set DataGrid1.DataSource = Rec
End Sub
vbdatacsv2.jpg


Các bạn có thể tải chương trình mẫu trong file đính kèm.
 

File đính kèm

  • ADo_Demo.zip
    8,5 KB · Đọc: 1.215
Last edited by a moderator:

nhatlyyeu

Thành viên mới
Tham gia
15/11/13
Bài viết
2
Điểm thành tích
1
Tuổi
38
Website
hinhanhnen.com
hay quá, đúng là cái em đang cần đây rồi, tìm mãi mới thấy được cái này, mỏi hết cả mắt. cảm ơn thớt ạh
 

Tải bộ cài phần mềm Dự toán GXD, Đấu thầu GXD, Thanh Quyết toán GXD, Quản lý chất lượng GXD. Dành cho người mua bản quyền
Kích để xem khóa học Dự toán công trình
Kích để xem khóa học Dự toán công trình
Phần mềm quản lý chất lượng công trình QLCL GXD
Tìm hiểu khóa học Thanh Quyết toán GXD

Các bài viết mới

Top