ADO.NET有很多值得学习的地方,这里我们主要介绍ADO.NET SqlDataAdapter对象,包括介绍DataSet对象等方面,大家一定会有收获的。ADO.NET可以在与数据库断开连接的方式下通过DataSet,DataTable对象进行数据处理,当需要更新数据时才重新与数据源进行连接,并更新数据源。
DataTable对象表示保存在本机内存中的表,它提供了对表中行列数据对象的各种操作。可以直接将数据从数据库填充到DataTable对象中,也可以将DataTable对象添加到现有的DataSet对象中。在断开连接的方式下,DataSet对象提供了和关系数据库一样的关系数据模型,代码中可以直接访问DataSet对象中的DataTable对象,也可以添加、删除DataTable对象。
ADO.NET SqlDataAdapter对象
SqlDataAdapter对象通过无连接的方式完成数据库和本地DataSet之间的交互。使用这种方式操作数据库的一般步骤为:
1.创建SqlConnection的实例;
2.创建SqlDataAdapter的实例,需要的话,根据select语句生成其他SQL语句;
3.创建DataSet的实例;
4.使用Fill方法将数据库中的表填充到DataSet的表中;
5.利用DataGridView或者其他控件对象编辑或显示数据;
6.需要的话,使用Update方法更新数据库。
ADO.NET SqlDataAdapter对象通过SelectCommand、InsertCommand、UpdateCommand和 DeleteCommand属性为后台数据库提供对应的操作命令,并传递需要的参数。一般情况下,只需要提供SELECT语句和连接字符串创建 SqlDataAdapter对象,然后利用SqlCommandBuilder对象生成InsertCommand、UpdateCommand和 DeleteCommand属性。
DataSet对象
1. 创建DataSet对象
使用创建的DataSet对象可以完成各种数据操作,利用向导生成的数据库数据源是一个强类型的DataSet以及一对或多对强类型的DataTable和TableAdapter的组合。类型化的DataSet是一个生成的类,是从.NET Framework的一般DataSet类衍生来的,但提供了已定义的架构以及特定于该架构的属性和方法。同时,对于ADO.NET SqlDataAdapter中的每个表,还生成了特定于该DataSet的附加衍生类,而且每个类都为相关的表提供了特定的架构、属性和方法。
当然,也可以直接创建一般的DataSet对象,例如:
- DataSet myDataset = new DataSet();