• Thứ Tư, 16/08/2006 15:56 (GMT+7)

    Tạo form trong Access

    Câu hỏi :
    Dữ liệu Access có table Bansach gồm các Field: Mabansach, Tensach, Tinhtrang (có 3 giá trị: 1, 2, 3; giá trị mặc định là 1). Tôi muốn tạo chương trình VB6 kết nối CSDL Access, giao diện là 1 Form có 1 textbox (txtmabs) và 1 command button (cmdOK). Khi nhập vào 1 mã bản sách trong ô txtmabs rồi nhấn nút cmdOK thì tình trạng (Tinhtrang) của mã bản sách đó chuyển thành 2. Xin hướng dẫn đoạn code để thực hiện.
     

    Trả lời :
    Cách đơn giản, an toàn và tổng quát hóa nhất để truy xuất database là dùng giao tiếp lập trình ADO của Microsoft, giao tiếp này được hiện thực trong thư viện ADODB trên VB 6.0 trở xuống. Các đối tượng thường dùng để truy xuất database trong ADODB là Connection, Command, RecordSet...
     Cụ thể để giải quyết yêu cầu của bạn, bạn hãy viết thủ tục xử lý Click chuột của button cmdOK như sau:
     Private Sub cmdOK_Click()
     'khai báo các biến cần dùng
     Dim MyConString As String
     Dim MyConnection As New ADODB.Connection
     Dim MyCommand As New ADODB.Command
     Dim MyRecordset As ADODB.Recordset
     'Connection string dùng DSN và ODBC Provider
     MyConString = "DSN=MyAccess"
     'hoặc Connection string dùng trực tiếp Provider Microsoft.Jet.OLEDB
     MyConString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\data\MyAccess.mdb"
     'kết nối connection đến database
     MyConnection.Open MyConString
     'tạo đối tượng Command để truy xuất
     MyCommand.ActiveConnection = MyConnection
     MyCommand.CommandText = "SELECT * FROM Bansach where Mabansach =" & txtmabs.Text
     Set MyRecordset = MyCommand.Execute()
     'kiểm tra có record cần xử lý
     If Not MyRecordset.EOF Then
     'hiệu chỉnh record theo yêu cầu
     MyCommand.CommandText = "UPDATE Bansach SET Tinhtrang=2 WHERE Mabansach =" & txtmabs.Text
     MyCommand.Execute
     End If
     'đóng các đối tượng đã dùng lại
     MyRecordset.Close
     MyConnection.Close
     End Sub
     Lưu ý để Project VB 6.0 của bạn có thể dùng các đối tượng trong thư viện ADO, bạn cần thực hiện menu Project.References, chọn mục "Microsoft ActiveX Data Object 2.x Library" và OK. Nếu bạn dùng DSN để truy xuất database, bạn phải định nghĩa DSN trước bằng cách vào Control Panel.Administrative Tools.Data Sources (ODBC) rồi khai báo các thông số liên quan đến database cần truy xuất như địa chỉ Provider, tên database, username/password truy xuất... Thông tin chi tiết về các đối tượng trong thư viện ADODB được trình bày rất rõ ràng trong CD MSDN của Microsoft.
     
    Chuyên mục: Windows