Đặt mọi thứ cùng nhau

Một phần của tài liệu Mastering C# Database Programming pot (Trang 124 - 127)

Danh sách 5.1 cho thấy một chương trình đầy đủ sử dụng những bước này. Chương trình này có tên SelectIntoDataSet.cs và được định vị trong thư mục ch05.

Danh sách 5.1: SELECTINTODATASET.CS /*

SelectIntoDataSet.cs illustrates how to perform a SELECT statement and store the returned rows in a DataSet object

*/ using System; using System.Data; using System.Data.SqlClient; class SelectIntoDataSet {

public static void Main() {

// step 1: formulate a string containing the details of the // database connection

string connectionString =

"server=localhost;database=Northwind;uid=sa;pwd=sa"; // step 2: create a SqlConnection object to connect to the // database, passing the connection string to the constructor SqlConnection mySqlConnection =

new SqlConnection(connectionString);

// step 3: formulate a SELECT statement to retrieve the // CustomerID, CompanyName, ContactName, and Address // columns for the first ten rows from the Customers table string selectString =

"FROM Customers " + "ORDER BY CustomerID";

// step 4: create a SqlCommand object to hold the SELECT statement SqlCommand mySqlCommand = mySqlConnection.CreateCommand(); // step 5: set the CommandText property of the SqlCommand object to // the SELECT string

mySqlCommand.CommandText = selectString; // step 6: create a SqlDataAdapter object

SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter(); // step 7: set the SelectCommand property of the SqlAdapter object // to the SqlCommand object

mySqlDataAdapter.SelectCommand = mySqlCommand; // step 8: create a DataSet object to store the results of // the SELECT statement

DataSet myDataSet = new DataSet();

// step 9: open the database connection using the // Open() method of the SqlConnection object mySqlConnection.Open();

// step 10: use the Fill() method of the SqlDataAdapter object to // retrieve the rows from the table, storing the rows locally // in a DataTable of the DataSet object

Console.WriteLine("Retrieving rows from the Customers table"); mySqlDataAdapter.Fill(myDataSet, "Customers");

// step 11: close the database connection using the Close() method // of the SqlConnection object created in Step 1

mySqlConnection.Close();

// step 12: get the DataTable object from the DataSet object DataTable myDataTable = myDataSet.Tables["Customers"]; // step 13: display the columns for each row in the DataTable, // using a DataRow object to access each row in the DataTable foreach (DataRow myDataRow in myDataTable.Rows) { Console.WriteLine("CustomerID = "+ myDataRow["CustomerID"]); Console.WriteLine("CompanyName = "+ myDataRow["CompanyName"]); Console.WriteLine("ContactName = "+ myDataRow["ContactName"]); Console.WriteLine("Address = "+ myDataRow["Address"]); } } }

Đầu ra từ chương trình này như sau:

Retrieving rows from the Customers table CustomerID = ALFKI

CompanyName = Alfreds Futterkiste ContactName = Maria Anders

Address = Obere Str. 57 CustomerID = ANATR

CompanyName = Ana Trujillo Emparedados y helados ContactName = Ana Trujillo

Address = Avda. de la Constitución 2222 CustomerID = ANTON

CompanyName = Antonio Moreno Taquería ContactName = Antonio Moreno

Address = Mataderos 2312 CustomerID = AROUT

CompanyName = Around the Horn ContactName = Thomas Hardy Address = 120 Hanover Sq. CustomerID = BERGS

CompanyName = Berglunds snabbköp ContactName = Christina Berglund Address = Berguvsvägen 8

CustomerID = BLAUS

CompanyName = Blauer See Delikatessen ContactName = Hanna Moos

Address = Forsterstr. 57 CustomerID = BLONP

CompanyName = Blondesddsl père et fils ContactName = Frédérique Citeaux Address = 24, place Kléber

CustomerID = BOLID

CompanyName = Bólido Comidas preparadas ContactName = Martín Sommer

Address = C/ Araquil, 67 CustomerID = BONAP CompanyName = Bon app'

ContactName = Laurence Lebihan Address = 12, rue des Bouchers CustomerID = BOTTM

CompanyName = Bottom-Dollar Markets ContactName = Elizabeth Lincoln

Address = 23 Tsawassen Blvd.

Tóm lược

Trong chương này, bạn đã có một tổng quan về những lớp ADO.NET , và bạn đã khảo sát một chương trình

đầy đủ kết nối tới một cơ sở dữ liệu, cất giữ những hàng cục bộ, ngắt kết nối cơ sở dữ liệu, và đọc nội dung của những hàng cục bộ này trong khi ngắt kết nối với cơ sở dữ liệu.

ADO.NET cho phép bạn tương tác trực tiếp với một cơ sở dữ liệu sử dụng những đối tượng của những lớp managed provider (nhà cung cấp được quản lý). Những đối tượng này cho phép bạn kết nối tới cơ sở dữ liệu và thực hiện những câu lệnh SQL trong khi kết nối trực tiếp tới cơ sở dữ liệu. Bạn sử dụng những tập hợp khác nhau của những lớp managed provider , phụ thuộc vào cơ sở dữ liệu Bạn sử dụng.

ADO.NET cũng cho phép bạn làm việc trong một trạng thái không kết nối. Khi làm điều này, bạn lưu trữ thông tin từ một cơ sở dữ liệu vào trong bộ nhớ của máy tính trên đó chương trình của bạn đang chạy. Bạn lưu giữ

thông tin này sử dụng những đối tượng của những lớp Dataset.

Một số lớp "bộ cung cấp có quản lý SQL Server" bao gồm : SqlConnection, SqlCommand, SqlDataReader, SqlDataAdapter, và SqlTransaction. Bạn sử dụng một đối tượng của lớp SqlConnection để kết nối tới một cơ sở

SQL hay sự gọi thủ tục lưu trữ mà bạn sẽ thực thi. Bạn sử dụng một đối tượng của lớp SqlDataReader đểđọc những hàng truy xuất được từ một cơ sở dữ liệu Máy chủ phục vụ SQL. Bạn sử dụng một đối tượng của lớp SqlDataAdapter để dời chuyển những hàng giữa một đối tượng Dataset và một cơ sở dữ liệu Máy chủ phục vụ

SQL.

Bạn sử dụng một đối tượng của lớp Dataset đểđại diện cho một bản sao cục bộ của thông tin được cất giữ trong một cơ sở dữ liệu. Bạn cũng có thể sử dụng một đối tượng Dataset đểđại diện cho dữ liệu XML. Vài đối tượng bạn có thể cất giữ trong một Dataset bao gồm những đối tượng : DataTable, DataRow, DataColumn,

DataRelation, và DataView .

Trong Chương 6, bạn sẽ học sử dụng Visual Studio .NET như thế nào để tạo ra những chương trình Windows.

Một phần của tài liệu Mastering C# Database Programming pot (Trang 124 - 127)

Tải bản đầy đủ (PDF)

(151 trang)