III- KẾT NỐI VÀ TRUY XUẤT DATABASE
c. Tạo một kết nối dữ liệu bằng ODBC (Open Database Connectivity) Theo c ách này ta không cần chỉ rõ ðýờng dẫn cũng nhý provider cho kết nố iứ
3.3.2. Thao tác với CSDL sử dụng ADODB.Recordset
Sau khi đã kết nối thành công với ắSừỔ thông qua đối týợng
ADODB.Connection, ta đã có thể thao tác đýợc với các đối týợng bên trong ắSừỔ đóứ Có nhiều cách để làm điều nàyự nhýng đõn giản nhất là thao tác với các đối týợng của CSDL thông quan ĩừỨừởứRecordsetứ ẹó là đối týợng dùng để chứa tập các bản ghi dữ liệu mà ta lấy ra từ ắSừỔự nó cung cấp cho ta các thuộc tắnh và các phýõng thức để ta có thể thao tác với tập bản ghi mà nó chứa nhýồ dịch chuyển con trỏ giữa các bản
thi, lấy thông tin từ các trýờngự sửa thông tin của các trýờngự thêm bản ghiự xoá bản ghi...
Vắ dụ: Giả sử ta có tệp ừuỔieuứmdb có hai bảng sau
Bảng 1 : tên là LUONG
MaNV HoTen LuongCB PhuCap TongTien
Bảng 2 : tên là DIACHI
MaNV Tel SoNha Pho Quan
Tạo một ĩừỨ Table Recordset ồ Trong trýờng hợp này recordset sẽ chứa trong nó ử tableứ
Giả sử rằng ta đã có một ừSẹ là ỘởangỔuongỢ kết nối tới tệp ừuỔieuứỹừởự trong tệp ừuỔieuứmdb này có ẵ bảng là Ổuong và ừiaắhi
<%
set conn=Server.CreateObject("ADODB.Connection") conn.Open "BangLuong"
set rs = Server.CreateObject("ADODB.recordset") rs.Open "Luong", conn
%> Vậy trong RS sẽ chứa bảng ỔUỨẹỗ Tạo một ĩừỨ SQỔ Recordset ồ Sẽ sử dụng ngôn ngữ SQỔ để trắch vấn các record <% set conn=Server.CreateObject("ADODB.Connection") conn.Open "bangluong" set rs = Server.CreateObject("ADODB.recordset") rs.Open "Select * from DIACHI", conn
%>
Để lấy dữ liệu trong ĩừỨ recordset ta hãy xem qua các vắ dụ sau ồ
Vắ dụ 1: In tất cả mọi nguời trong bảng ỔUỨẹỗ ra màn hình <%
set conn=Server.CreateObject("ADODB.Connection") conn.Open "bangluong"
rs.Open "Select * from LUONG", conn for each x in rs.fields
response.write(x.name) Ổ in tên cột response.write(" = ") response.write(x.value) Ổ in giá trị response.write ỘỉbrặỢ next set rs=nothing set conn=nothing %> Bây giờự ta sẽ tìm hiểu một số phýõng thức của Recordset 3.3.2.1.Các phýõng thức của đối týợng Recordset Phýõng thức Diễn giải AddNew Tạo mới record
Cancel Hủy các thao tác đang thực thi
Close Đóng đối týợng recordset và các đối týợng liên quan
Delete Xóa record hay một tập record hiện hành
Find Tìm một record thoả điều kiện GetRows Lấy nhiều record đýa vào một mảng GetString Trả về recordset dýới dạng một chuỗi MoveFirst Đýa vị trắ của record hiện hành về
record đầu tiên trong recordset MoveLast Đýa vị trắ của record hiện hành về
record cuối cùng trong recordset MoveNext Đýa vị trắ của record hiện hành về
record kế
NextRecordset Xóa đối týợng Recordset hiện hành và trả về đối týợng recordset kế tiếp
Open Mở một recordset
Resync Refesh lại dữ liệu trong đối týợng Recordset hiện hành
Save Lýu Recordset xuống file
Seek Tìm chỉ mục của recordset
Update Lýu các thay đổỡ
Đối týợng Recordset có nhiều phýõng thức để xử lý thao tác dữ liệu nhý bảng
liệt kê ở trênự trong đó các phýõng thức thýờng sử dụng nhý để tác động đến sự thay
đổi mẫu tin nhý AddNew, Update, Delete; di chuyển vị trắ các mẫu tin nhý
MoveFirst, MovePrevious, MoveNext, MoveLast; đóng mở recordset nhý Open,
Close. Ta sẽ lần lýợt đi vào chi tiết cách thức sử dụng các phýõng này một các cụ thểứ