« Home « Kết quả tìm kiếm

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


Tóm tắt Xem thử

- IsClosed Trả về true nếu IDataReader bị đóng.
- 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ố 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.
- 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á 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)..
- GetSchemaTable Trả về đối tượng System.Data.DataTable chứa siêu dữ liệu mô tả các cột có trong IDataReader..
- IsDBNull Trả về true nếu giá trị trong cột cụ thể chứa giá trị null;.
- 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 kết quả kế tiếp.
- Theo mặc định, IDataReader được bố trí tại tập kết quả đầ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ộc các kiểu dữ liệu đặc trưng của data-source.
- Ví dụ, SqlDataReader chứa các phương thức.
- 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ết nối cơ sở dữ liệu.
- 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ệnh using 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ìm và hiển thị thông tin siêu dữ liệu..
- using System.Data;.
- using System.Data.SqlClient;.
- Tạo đối tượng SqlConnection mới..
- Cấu hình chuỗi kết nối của đối tượng SqlConnection..
- Mở kết nối cơ sở dữ liệu và thực thi câu lệnh..
- 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 D.
- 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.");.
- reader.FieldCount.
- Console.WriteLine(".
- Column Name:{0} Type:{1}", reader.GetName(field),.
- reader.GetDataTypeName(field));.
- Console.ReadLine();.
- 1.1 Thu lấy tài liệu XML từ truy vấn SQL Server.
- V V Bạn cần thực thi một truy vấn dựa trên SQL Server 2000 hoặc MSDE và lấy các kết quả dạng XML..
- Sử dụng mệnh đề FOR XML trong truy vấn SQL để trả về kết quả dạng XML..
- Thực thi câu lệnh bằng phương thức SqlCommand.ExecuteXmlReader, kết quả trả về là một đối tượng System.Xml.XmlReader mà thông qua nó bạn có thể truy xuất dữ liệu XML..
- SQL Server 2000 và MSDE trực tiếp hỗ trợ XML.
- Bạn chỉ cần thêm mệnh đề FOR XML AUTO vào cuối truy vấn SQL để cho biết rằng các kết quả sẽ được trả về ở dạng XML..
- Thay vào đó, nó trả về kết quả của mỗi bản ghi theo từng phần tử (element) riêng rẽ, với tất cả các trường (field) đều là đặc tính (attribute).
- SELECT CustomerID, CompanyName FROM Customers FOR XML AUTO sẽ trả về XML với cấu trúc như sau:.
- Bạn có thể thêm từ khóa ELEMENTS vào cuối truy vấn để định dạng kết quả theo các phần tử lồng nhau.
- sẽ trả về XML với cấu trúc như sau:.
- Bạn cũng có thể định dạng kết quả một cách chi tiết hơn bằng cú pháp FOR XML EXPLICIT.
- Bạn hãy tham khảo một quyển sách chuyên về SQL Server để biết thêm chi tiết..
- Ví dụ dưới đây trình bày cách lấy kết quả dạng XML bằng mệnh đề FOR XML và phương thức ExecuteXmlReader.
- Chú ý rằng, kết nối không thể được sử dụng cho bấy kỳ câu lệnh nào khác trong khi XmlReader đang mở.
- Bạn nên xử lý kết quả càng nhanh càng tốt và phải luôn đóng XmlReader lại (Chương 5 có rất nhiều ví dụ trình bày cách sử dụng lớp XmlReader)..
- using System.Xml;.
- FROM Customers FOR XML AUTO";.
- Khai báo XmlReader để nó có thể được tham chiếu trong.
- Mở kết nối cơ sở dữ liệu..
- để truy xuất các kết quả..
- Console.Write("Element: ".
- reader.Name);.
- if (reader.HasAttributes).
- reader.AttributeCount.
- reader.MoveToAttribute(i);.
- Console.Write(".
- reader.Name, reader.Value);.
- reader.MoveToElement();.
- Console.WriteLine();.
- Console.WriteLine(ex.ToString());.
- null) reader.Close();.
- Thay vì làm việc với XmlReader và truy xuất dữ liệu một cách tuần tự, bạn có thể đọc dữ liệu XML vào System.Xml.XmlDocument.
- Theo cách này, tất cả dữ liệu được lấy vào bộ nhớ, và kết nối cơ sở dữ liệu có thể đóng lại.
- Kế đó, bạn có thể tiếp tục tương tác với tài liệu XML (Chương 5 có rất nhiều ví dụ trình bày cách sử dụng lớp XmlDocument).
- com.CommandText.
- "SELECT CustomerID, CompanyName FROM Customers FOR XML AUTO";.
- Load dữ liệu XML vào XmlDocument.
- phần tử gốc để có thể đặt mỗi phần tử hàng kết quả vào đó..
- Console.WriteLine(doc.OuterXml);.
- 1.2 Nhận biết tất cả các thể hiện SQL Server 2000 trên mạng.
- V V Bạn cần lấy danh sách tất cả các thể hiện của SQL Server 2000 có thể truy xuất được trên mạng..
- Sử dụng COM Interop để truy xuất chức năng của Microsoft SQLDMO Object Library.
- Tạo một đối tượng Application rồi gọi phương thức ListAvailableSQLServers của nó.
- ListAvailableSQLServers sẽ trả về đối tượng.
- NameList, là một tập hợp chứa tên của mỗi đối tượng SQL Server 2000 được tìm thấy trên mạng..
- Thư viện lớp .NET Framework không có chức năng tìm các SQL Server chưa biết.
- Hình 10.1 Chọn Microsoft SQLDMO Object Library trong hộp thoại Add Reference Nếu không có Visual Studio .NET, bạn hãy sử dụng Type Library Importer (tlbimp.exe) để tạo một Interop Assembly cho file sqldmo.dll (thường nằm trong thư mục \Program Files\Microsoft SQL Server\80\Tools\Binn)..
- Để có thể chạy được dự án này, bạn cần phải cài đặt SQL Server Service Pack 2 hoặc mới hơn..
- Để lấy được danh sách các SQL Server đang có hiệu lực, bạn hãy tạo một đối tượng SQLDMO.Application và gọi phương thức ListAvailableSQLServers của nó.
- Mỗi chuỗi trong đối tượng trả về SQLDMO.NameList.
- là tên của một SQL Server đang có hiệu lực.
- Bạn có thể sử dụng các tên này trong chuỗi kết nối hoặc hiển thị chúng trong một danh sách cho người dùng chọn.
- Ví dụ dưới đây sẽ hiển thị tên của tất cả các SQL Server có thể truy xuất được trong cửa sổ Console:.
- Thu lấy danh sách tất cả các SQL Server có hiệu lực..
- Console.WriteLine("No SQL Servers visible on the network.");.
- Hiển thị danh sách các SQL Server có hiệu lực..
- Console.WriteLine("SQL Servers visible : "

Xem thử không khả dụng, vui lòng xem tại trang nguồn
hoặc xem Tóm tắt