MÔ HÌNH ĐỐI TƯỢNG ADO 5 1 Đối tượng Connection

Một phần của tài liệu Website quản lý nhân sự (Trang 27 - 28)

V. ADO (ACTIVEX DATA OBJECT)

2.MÔ HÌNH ĐỐI TƯỢNG ADO 5 1 Đối tượng Connection

2.1 Đối tượng Connection

Đối tượng Connection cho phép thực hiện việc mở kết nối đến nguồn dữ liệu cần truy xuất. Thông qua đối tượng Connection, người lập trình chỉ định trình cung cấp OLE DB Provider sẽ dùng để tiếp cận dữ liệu. Các thông tin kết nối bổ sung khác như: tên đăng nhập cơ sở dữ liệu (username), mật khẩu (password), tên máy chủ (server) …Tất cả những thông tin này thường được lưu vào một chuỗi gọi là chuỗi kết nối (Connection String).

Lưu ý là để có thể kết nối và truy xuất nguồn dữ liệu, không bắt buộc phải tạo đối tượng Connection. Các đối tượng như Command, Recordset, Record… cũng cho phép mở trực tiếp kết nối. Tuy nhiên, sử dụng đối tượng Connection sẽ cho phép tách biệt thao tác kết nối và thao tác truy cập dữ liệu. Hơn nữa, đối tượng Connection còn cung cấp thêm một số chức năng chuyên dụng khác như cho phép thực thi câu lện SQL tác động dữ liệu (INSERT, UPDATE, DELETE, gọi thủ tục nội Store Procedure…) hoặc kiểm soát giao dịch (transaction) như Rollback, Commit…

2.2 Đối tượng Command (lệnh thực thi)

Mặc dù người lập trình có thể sử dụng đối tượng Connection để thực thi các lệnh SQL nhưng tốt nhất nên dùng Connection cho mục đích kết nối. Đối tượng Command sẽ được dùng cho mục đích thực thi lệnh tốt hơn. Khi đối tượng Connection thực thi lệnh, mặc định Connection sẽ khởi tạo và gọi đến đối tượng Command.

Đối tượng Command cho phép chuyển tham số vào các lệnh thực thi SQL. Tham số có thể chỉ định kiểu hoặc giá trị tường minh. Các tham số cso thể nhận giá trị trả về sau khi thực thi… Command có thể dùng cho cả hai mục đích: thực thi các lệnh SQL không cần nhận kết quả trả về (như INSERT, DELETE, UPDATE, các Store Procedure) hoặc thực thi các lệnh trả về tập Recordset như lệnh SELECT.

2.3 Đối tượng Recordset (tập các mẩu tin)

Recordset có thể nói là đối tượng được sử dụng thường xuyên nhất trong ADO. Đối tượng này cung cấp kết quả trả về từ câu lệnh truy vấn một tập các mẩu tin. Trang ASP có thể dùng vòng lặp duyệt qua các mẩu tin này và hiển thị dữ liệu kết xuất ra trang Web phía trình duyệt. Ngoài ra Recordset còn cho phép lọc dữ liệu từ tập các mẩu tin, truy xuất

đến từng trường cụ thể của mẩu tin thông qua đối tượng Field hoặc danh sách các trường trong mẩu tin thông qua đối tượng Field.

2.4 Đối tượng Record

Đối tượng Record cho phép truy cập chi tiết đến thông tin của từng mẩu tin. Có thể hỏi đối tượng Recordset đã cung cấp cách thức truy cập đến từng trường của mẩu tin thì tại sao lại dùng thêm đối tượng Record? Thật sự nếu chỉ dùng loại dữ liệu dạng bảng của cơ sở dữ liệu thì có thể không cần dùng đến đối tượng Record. Tuy nhiên đối tượng Record giúp truy xuất tổng quát đến mọi nguồn dữ liệu không riêng gì dữ liệu dạng bảng. Hãy hình dung nếu muốn truy xuất nội dung của nguồn dữ liệu là một thư mục. Thư mục có thể xem là một bảng dữ liệu với danh sách file là các mẩu tin (record). Tuy nhiên mỗi mẩu tin của file trong thư mục không đơn thuần chỉ chứa các trường như tên file, ngày giờ tạo file, kích thước file…Thông tin về mỗi mẩu tin biểu diễn cho file có thể khác nhau về quyền truy xuất trên file, nội dung file. Đối tượng Record sẽ giúp thể hiện sự khác biệt này của từng mẩu tin thông qua phương thức và thuộc tính. Nếu chỉ sử dụng và truy xuất mẩu tin thông qua Recordset theo cách thông thường thì sẽ không xử lý được.

2.5 Đối tượng Stream (luồng)

Đối tượng Stream cho phép biểu diễn nội dung của một nut (node) dữ liệu. Cụ thể, thông qua Stream, có thể xem và truy xuất được các loại dữ liệu nhị phân không thuộc dạng bảng như nội dung file, e-mail, trang Web, dữ liêu XML… Đối tượng Stream thường được kết hợp xử lý thông qua đối tượng Record và Recordset.

2.6 Đối tượng Collection (tập hợp)

Thư viện ADO cung cấp rất nhiều loại tập hợp. Mỗi loại có thể nắm giữ một hoặc nhiều đối tượng khác thậm chí có thể là một tập hợp rỗng không chứa phần tử nào cả.

Một phần của tài liệu Website quản lý nhân sự (Trang 27 - 28)