1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu The DataSet Class pptx

6 336 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề The DataSet Class
Thể loại presentation
Định dạng
Số trang 6
Dung lượng 38,64 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

The DataSet Class You use an object of the DataSet class to represent a local copy of the information stored in the database.. Figure 10.1: Some of the DataSet objects Table 10.4 shows s

Trang 1

The DataSet Class

You use an object of the DataSet class to represent a local copy of the information stored

in the database You can make changes to that local copy in your DataSet and then later synchronize those changes with the database through a DataAdapter A DataSet can represent database structures such as tables, rows, and columns You can even add

constraints to your locally stored tables to enforce unique and foreign key constraints

Figure 10.1 shows the DataSet and its relationship to some of the objects you can store within it As you can see from this figure, you can store multiple DataTable objects in a DataSet, and so on

Figure 10.1: Some of the DataSet objects

Table 10.4 shows some of the DataSet properties

Table 10.4: DataSet PROPERTIES

CaseSensitive bool Gets or sets a bool value that indicates

whether string comparisons within DataTable objects are case-sensitive DataSetName string Gets or sets the name of the current

DataSet object

DefaultViewManager DataViewManager Gets a custom view of the data stored in

Trang 2

Table 10.4: DataSet PROPERTIES

the DataSet object You use a view to filter, search, and navigate the DataSet EnforceConstraints bool Gets or sets a bool value that indicates

whether constraint rules are followed when updating information in the DataSet object

ExtendedProperties PropertyCollection Gets a collection (PropertyCollection) of

user information You can use the PropertyCollection to store strings with any additional information you want You use the Add() method through

ExtendedProperties to add a string

HasErrors bool Gets a bool value that indicates whether

there are errors in any of the rows in the tables of the DataSet object

Locale CultureInfo Gets or sets a CultureInfo object for the

DataSet A CultureInfo object contains information about a specific culture including its name, writing system, and calendar

Namespace string Gets or sets the namespace for the

DataSet object The namespace is a string that is used when reading and writing an XML document using the ReadXml(), WriteXml(), ReadXmlSchema(), and WriteXmlSchema() methods The namespace is used to scope the XML attributes and elements

Prefix string Gets or sets the XML prefix for the

DataSet namespace The prefix is used in

an XML document to identify the elements that belong to the DataSet object's namespace

Relations DataRelationCollection Gets the collection of relations

(DataRelationCollection) that allows navigation from a parent table to a child table A DataRelationCollection consists

of DataRelation objects

Trang 3

Table 10.4: DataSet PROPERTIES

Tables DataTableCollection Gets the collection of tables

(DataTableCollection) that contains the DataTable objects stored in the DataSet

Table 10.5 shows some of the DataSet methods

Table 10.5: DataSet METHODS

TYPE

DESCRIPTION

AcceptChanges() void Commits all the changes made to the DataSet object

since it was loaded or since the last time the AcceptChanges() method was called

BeginInit() void Used by the Visual Studio NET designer to

initialize a DataSet used in a form or component Clear() void Removes all rows from all tables in the DataSet

object

Clone() DataSet Clones the structure of the DataSet object and

returns that clone The clone contains all the schemas, relations, and constraints

Copy() DataSet Copies the structure and data of the DataSet object

and returns that copy The copy contains all the schemas, relations, constraints, and data

EndInit() void Used by the Visual Studio NET designer to end

initialization of a DataSet used in a form or component

GetChanges() DataSet Overloaded Gets a copy of all the changes made to

the DataSet object since it was last loaded or since the last time the AcceptChanges() method was called

GetXml() string Returns the XML representation of the data stored

in the DataSet object

GetXmlSchema() string Returns the XML representation of the schema for

the DataSet object

HasChanges() bool Overloaded Returns a bool value that indicates

whether the DataSet object has changes that haven't been committed

Trang 4

Table 10.5: DataSet METHODS

TYPE

DESCRIPTION

Merge() void Overloaded Merges this DataSet with another

specified DataSet object

ReadXml() XmlReadMode Overloaded Loads the data from an XML file into

the DataSet object

ReadXmlSchema() void Overloaded Loads a schema from an XML file into

the DataSet object

RejectChanges() void Undoes all the changes made to the DataSet object

since it was created or since the last time the AcceptChanges() method was called

Reset() void Resets the DataSet object to its original state

WriteXml() void Overloaded Writes out the data from the DataSet

object to an XML file

WriteXmlSchema() void Overloaded Writes out the schema of the DataSet

object to an XML file

Table 10.6 shows one of the DataSet events

Table 10.6: DataSet EVENT

MergeFailed MergeFailedEventHandler Fires when an attempt is made add a DataRow

to a DataSet when a DataRow with the same primary key value already exists in that DataSet

In the next section, you'll learn how to create a DataSet object

Creating a DataSet Object

You create a DataSet object using one of the following DataSet constructors:

DataSet()

DataSet(string dataSetNameString)

where dataSetNameString is the string assigned to the DataSetName property of your

DataSet object The setting of the DataSetName property is optional

The following example uses the DataSet() constructor to create a DataSet object:

Trang 5

DataSet myDataSet = new DataSet();

The next example uses the DataSet(string dataSetNameString) constructor to create a

DataSet object:

DataSet myDataSet = new DataSet("myDataSet");

Populating a DataSet Object

In this section, you'll learn how to populate a DataSet using the Fill() method of a

DataAdapter Specifically, you'll see how to populate a DataSet using

• A SELECT statement

• A range of rows

• A stored procedure

Using a SELECT Statement

Before you populate a DataSet you first need a Connection, a Command, and a

DataAdapter:

SqlConnection mySqlConnection =

new SqlConnection(

"server=localhost;database=Northwind;uid=sa;pwd=sa"

);

SqlCommand mySqlCommand = mySqlConnection.CreateCommand();

mySqlCommand.CommandText =

"SELECT TOP 5 ProductID, ProductName, UnitPrice " +

"FROM Products " +

"ORDER BY ProductID";

SqlDataAdapter mySqlDataAdapter = new SqlDataAdapter();

mySqlDataAdapter.SelectCommand = mySqlCommand;

DataSet myDataSet = new DataSet();

mySqlConnection.Open();

Notice the mySqlCommand object contains a SELECT statement that retrieves the ProductID, ProductName, and UnitPrice columns of the top five rows from the Products table

RETRIEVING FROM MULTIPLE TABLES

Of course, you're not limited to a SELECT statement that retrieves from a single table You can use a SELECT statement that retrieves from multiple tables using a join,

Trang 6

however, you should typically avoid doing that because a DataTable is meant to be used

to store rows from a single database table

Next, to populate myDataSet with the rows from the Products table, you call the Fill() method of mySqlDataAdapter For example:

int numberOfRows = mySqlDataAdapter.Fill(myDataSet, "Products");

The int returned by the Fill() method is the number of rows synchronized between the DataSet and the database via the DataAdapter In the previous example, the int is the number of rows copied from the Products table to myDataSet and is set to 5-the number

of rows retrieved by the SELECT statement shown earlier

The first parameter to the Fill() method is your DataSet, and the second parameter is a string containing the name you want to assign to the DataTable created in your DataSet

Note The name you assign to your DataTable doesn't have to be the same as the name of

the database table You can use any string of text, though typically you should still use the same name, since it will help you keep track of what database table was

used to populate the DataTable

When you call the Fill() method for the first time, the following steps are performed by ADO.NET:

1 The SELECT statement in your SqlCommand is executed

2 A new DataTable object is created in your DataSet

3 Your DataTable is populated with the result set returned by the SELECT

statement

If you're finished with the database after calling the Fill() method, you should close your Connection object using the Close() method:

mySqlConnection.Close();

Ngày đăng: 26/01/2014, 07:20

TỪ KHÓA LIÊN QUAN