深入分析ADO.NET中的DataSet对象 3
点击次数:29 次 发布日期:2008-11-26 11:21:08 作者:源代码网
|
源代码网推荐 源代码网推荐 SqlConnection sqlConnection1 = new SqlConnection ( "Data Source=localhost ;Integrated Security=SSPI ;Initial Catalog=Northwind" ) ; 源代码网推荐 //创建数据连接 源代码网推荐 SqlCommand selectCMD = new SqlCommand ( "SELECT CustomerID , CompanyName FROM Customers" , sqlConnection1 ) ; 源代码网推荐 //创建并初始化SqlCommand对象 源代码网推荐 SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter ( ) ; 源代码网推荐 custDA.SelectCommand = selectCMD ; 源代码网推荐 sqlConnection.Open ( ) ; 源代码网推荐 //创建SqlDataAdapter对象,并根据SelectCommand属性检索数据 源代码网推荐 DataSet dsDataSet1 = new DataSet ( ) ; 源代码网推荐 sqlDataAdapter1.Fill ( dsDataSet1 , "Customers" ) ; 源代码网推荐 //使用SqlDataAdapter的Fill方法填充DataSet 源代码网推荐 sqlConnection.Close ( ) ; 源代码网推荐 //关闭数据连接 源代码网推荐 源代码网推荐 对于其他数据提供者的DataAdapter,具体的实现检索数据库中的数据并填充DataSet的实现方法类似于以上方法。 源代码网推荐 源代码网推荐 2. 通过DataAdapter对象操作DataSet实现更新数据库: 源代码网推荐 源代码网推荐 DataAdapter是通过其Update方法实现以DataSet中数据来更新数据库的。当DataSet实例中包含数据发生更改后,此时调用Update方法,DataAdapter 将分析已作出的更改并执行相应的命令(INSERT、UPDATE 或 DELETE),并以此命令来更新数据库中的数据。如果DataSet中的DataTable是映射到单个数据库表或从单个数据库表生成,则可以利用 CommandBuilder 对象自动生成 DataAdapter 的 DeleteCommand、InsertCommand 和 UpdateCommand。使用DataAdapter对象操作DataSet实现更新数据库具体的实现方法,只需把下面的代码清单02添加到代码清单01之后,二者合并即可实现删除Customers数据表中第一行数据: 源代码网推荐 源代码网推荐 代码清单02: 源代码网推荐 源代码网推荐 SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ; 源代码网推荐 //以sqlDataAdapter1为参数来初始化SqlCommandBuilder实例 源代码网推荐 dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ; 源代码网推荐 //删除DataSet中删除数据表Customers中第一行数据 源代码网推荐 sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ; 源代码网推荐 //调用Update方法,以DataSet中的数据更新从数据库 源代码网推荐 dsDataSet1.Tables["Customers"].AcceptChanges ( ) ; 源代码网推荐 源代码网推荐 由于不了解DataSet结构和与数据库关系,很多初学者往往只是更新了DataSet中的数据,就认为数据库中的数据也随之更新,所以当打开数据库浏览时发现并没有更新数据,都会比较疑惑,通过上面的介绍,疑惑应当能够消除了。 源代码网推荐 源代码网推荐 3. XML和DataSet: 源代码网推荐 源代码网推荐 DataSet中的数据可以从XML数据流或文档创建。并且.Net Framework可以控制加载XML数据流或文档中那些数据以及如何创建DataSet的关系结构。加载XML数据流和文档到DataSet中是可使用DataSet对象的ReadXml方法(注意:ReadXml来加载非常大的文件,则性能会有所下降)。ReadXml 方法将从文件、流或 XmlReader 中进行读取,并将 XML 的源以及可选的 XmlReadMode 参数用作参数。该ReadXml方法读取 XML 流或文档的内容并将数据加载到 DataSet 中。根据所指定的XmlReadMode和关系架构是否已存在,它还将创建DataSet的关系架构。 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
