Danh mục

Cơ sở dữ liệu Trong Microsoft .NET Framework phần 3

Số trang: 9      Loại file: pdf      Dung lượng: 176.27 KB      Lượt xem: 18      Lượt tải: 0    
Thư viện của tui

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Các thành viên thông dụng của các lớp data-reader Thành viên Thuộc tính FieldCount IsClosed Lấy số cột trong hàng hiện tại. Trả về true nếu IDataReader bị đóng; false nếu nó hiện đang mở.
Nội dung trích xuất từ tài liệu:
Cơ sở dữ liệu Trong Microsoft .NET Framework phần 3Bảng 10.5 Các thành viên thông dụng của các lớp data-reader Thành viên Mô tả Thuộc tính FieldCount Lấy số cột trong hàng hiện tại. Trả về true nếu IDataReader bị đóng; false nếu nó hiện IsClosed đang mở. Trả về một đối tượng mô tả giá trị của cột cụ thể trong hàng hiện tại. Cột có thể được chỉ định bằng một chỉ số Item nguyên (đánh số từ 0) hoặc một chuỗi chứa tên cột. Bạn phải ép giá trị trả về thành kiểu phù hợp. Đây là bộ chỉ mục (indexer) cho các lớp data-reader. Phương thức GetDataTypeName Lấy tên của kiểu dữ liệu đối với một cột cụ thể. Lấy đối tượng System.Type mô tả kiểu dữ liệu của giá GetFieldType trị chứa trong cột cụ thể (cột này được chỉ định bằng một chỉ số nguyên—đánh số từ 0). Lấy tên của cột cụ thể (cột này được chỉ định bằng một GetName chỉ số nguyên—đánh số từ 0). Lấy số thứ tự cột (đánh số từ 0) ứng với một tên cột cụ GetOrdinal thể. Trả về đối tượng System.Data.DataTable chứa siêu dữ GetSchemaTable liệu mô tả các cột có trong IDataReader. Trả về true nếu giá trị trong cột cụ thể chứa giá trị null; IsDBNull nếu không thì trả về false. Nếu IDataReader chứa nhiều tập kết quả vì có nhiều lệnh được thực thi, NextResult sẽ di chuyển đến các tập NextResult kết quả kế tiếp. Theo mặc định, IDataReader được bố trí tại tập kết quả đầu tiên. Dịch reader đến bản ghi kế tiếp. Reader luôn bắt đầu tại Read bản ghi đầu tiên.Data-reader Server và Oracle cũng chứa các phương thức thực hiện việc lấy dữ liệu thuộccác kiểu dữ liệu đặc trưng của data-source. Ví dụ, SqlDataReader chứa các phương thứcnhư GetSqlByte, GetSqlDecimal, và GetSqlMoney, và OracleDataReader chứa cácphương thức như GetOracleLob, GetOracleNumber, và GetOracleMonthSpan. Bạn hãytham khảo tài liệu .NET Framework SDK để biết thêm chi tiết.Khi đã hoàn tất với data-reader, bạn nên gọi phương thức Close để có thể sử dụng lại kếtnối cơ sở dữ liệu. IDataReader thừa kế System.IDisposable; nghĩa là mỗi lớp data-readerđều hiện thực phương thức Dispose. Phương thức này sẽ tự động gọi Close, cho nên lệnhusing là một cách rất rõ ràng và hiệu quả khi sử dụng data-reader.Ví dụ dưới đây mô tả cách sử dụng data-reader để xử lý nội dung của hai tập kết quảđược trả về bởi việc thực thi một truy vấn gồm hai lệnh SELECT. Tập kết quả đầu tiênđược liệt kê và hiển thị trong cửa sổ Console. Tập kết quả thứ hai được duyệt qua để tìmvà hiển thị thông tin siêu dữ liệu.using System;using System.Data;using System.Data.SqlClient;public class DataReaderExample { public static void Main() { // Tạo đối tượng SqlConnection mới. using (SqlConnection con = new SqlConnection()) { // Cấu hình chuỗi kết nối của đối tượng SqlConnection. con.ConnectionString = Data Source = localhost; + Database = Northwind; Integrated Security=SSPI; // Tạo và cấu hình câu lệnh mới. SqlCommand com = con.CreateCommand(); com.CommandType = CommandType.Text; com.CommandText = SELECT BirthDate,FirstName,LastName + FROM Employees ORDER BY BirthDate; + SELECT * FROM Employees; // Mở kết nối cơ sở dữ liệu và thực thi câu lệnh. con.Open(); // Thực thi câu lệnh và thu lấy SqlReader. using (SqlDataReader reader = com.ExecuteReader()) { // Xử lý tập kết quả đầu tiên // và hiển thị nội dung của tập kết quả. Console.WriteLine(Employee Birthdays (By Age).); while (reader.Read()) { Console.WriteLine({0,18:D} - {1} {2}, reader.GetDateTime(0), // Lấy dữ liệu định kiểu reader[FirstName], // Sử dụng chỉ số chuỗi reader[2]); // Sử dụng chỉ số thứ tự } // Xử lý tập kết quả thứ hai và hiển thị chi tiết // về các cột và các kiểu dữ liệu trong tập kết quả. reader.NextResult(); Console.WriteLine(Employee Table Metadata.); for (int field = 0; field < reader.FieldCount; field++) { Console.WriteLine( Column Name:{0} Type:{1}, reader.GetName(field), ...

Tài liệu được xem nhiều: