• Thứ Hai, 10/10/2005 08:48 (GMT+7)

    Câu hỏi :
    Tôi dùng VB6 lập trình truy xuất csdl trên server, sử dụng ADO. Tôi có thắc mắc giữa 2 giải pháp:
     - chương trình client gởi câu lệnh SQL đến server, chương trình server sẽ xử lý câu lệnh đó và trả kết quả về client.
     - hay client được phép kết nối và truy cập CSDL tại server.
     Xin hướng dẫn giải pháp nào khả thi và quy trình thực hiện.


    Trả lời :
    ADO là giao tiếp lập trình truy xuất CSDL độc lập với công nghệ quản lý và vị trí của CSDL, ADO dựa trên giao tiếp ODBC. Chương trình truy xuất CSDL dùng ADO có thể được xây dựng theo mô hình two-tiers hay three-tiers:

     - Mô hình two-tiers: server database chạy trên 1 máy, ứng dụng chạy trên máy khác (máy client), nó dùng và liên kết với driver ADO trên máy client và mọi tác vụ truy xuất database đều thông qua module ADO trên máy client, module này sẽ có nhiệm vụ giao tiếp với server database ở máy server.

     - Mô hình three-tiers: ứng dụng chạy trên máy client, tuy nhiên người ta viết thêm module xử lý luận lý của ứng dụng và module này chạy trên cùng máy với server database. Code của module xử lý luận lý này sẽ liên kết và dùng driver ADO trên máy server để truy xuất database.
    Với mô hình này, mỗi lần ứng dụng cần truy xuất database, nó sẽ gửi thông báo yêu cầu (request) đến module xử lý luận lý của mình ở máy server, module xử lý phân tích request và xử lý, trong quá trình xử lý request, module này sẽ dùng ADO để truy xuất server database.

    Việc chọn mô hình nào cho ứng dụng của mình là tùy từng người, tuy nhiên mô hình three-tiers có nhiều ưu điểm hơn như: an toàn và bảo mật đoạn lệnh xử lý luận lý, có thể giảm thiểu dung lượng data gửi/nhận giữa 2 máy client/server...
    Chuyên mục: Lập trình