399
Chương 10: Cơ sở dữ liệu
if (result == 1) {
Console.WriteLine("Employee title updated.");
} else {
Console.WriteLine("Employee title not updated.");
}
}
Để thực thi một câu lệnh trả về một tập kết quả như lệnh
SELECT
hoặc thủ tục tồn trữ, bạn hãy
sử dụng phương thức
ExecuteReader
. Phương thức này trả về một đối tượng
IDataReader
(sẽ
được thảo luận trong mục 10.5) mà qua nó bạn có thể truy xuất đến dữ liệu kết quả. Hầu hết
các data-provider cũng cho phép bạn thực thi nhiều câu lệnh SQL trong một lời gọi phương
thức
ExecuteReader
; ví dụ trong mục 10.5 sẽ giải thích điều này và trình bày cách truy xuất
mỗi tập kết quả.
Đoạn mã dưới đây sử dụng phương thức
ExecuteReader
để thực thi thủ tục tồn trữ “Ten Most
Expensive Products” (mười sản phẩm đắt nhất) từ cơ sở dữ liệu Northwind và hiển thị kết quả
trong cửa sổ Console:
public static void ExecuteReaderExample(IDbConnection con) {
// Tạo và cấu hình câu lệnh mới.
IDbCommand com = con.CreateCommand();
com.CommandType = CommandType.StoredProcedure;
com.CommandText = "Ten Most Expensive Products";
// Thực thi câu lệnh và xử lý kết quả.
using (IDataReader reader = com.ExecuteReader()) {
Console.WriteLine("Price of the Ten Most Expensive Products.");
while (reader.Read()) {
// Hiển thị chi tiết về sản phẩm.
Console.WriteLine(" {0} = {1}",
reader["TenMostExpensiveProducts"],
reader["UnitPrice"]);
}
}
}