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ụ:
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:
Đoạn chương trình chèn thêm bản ghi (insert) vào dữ liệu CSV
Các bạn có thể tải chương trình mẫu trong file đính kèm.
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
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
Đ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
Các bạn có thể tải chương trình mẫu trong file đính kèm.
File đính kèm
Last edited by a moderator: