相关文章推荐
力能扛鼎的吐司  ·  Python消息框程序·  3 周前    · 
力能扛鼎的吐司  ·  Configuring each ...·  3 月前    · 
力能扛鼎的吐司  ·  camunda_06_quickstart_ ...·  5 月前    · 
力能扛鼎的吐司  ·  12.04 - Installation ...·  11 月前    · 
力能扛鼎的吐司  ·  NuGet Gallery ...·  11 月前    · 
威武的香瓜  ·  [转]Entity Framework ...·  8 小时前    · 

SqlDataAdapter对象

一、特点介绍
1、表示用于填充 DataSet 和更新 SQL Server 数据库的一组数据命令和一个数据库连接。
2、在SqlDataAdapter和DataSet之间没有直接连接。当完成SqlDataAdpater.Fill(DataSet)调用后,两个对象之间就没有连接了。
二、使用介绍

1、创建SqlDataAdapter

string strSQL=“Select * from Customers”;
    SqlCommand cmd=new SqlCommand(strSQL,cn);
    SqlDataAdapter da=new SqlDataAdapter();
    da.SelectCommand=cmd;
2、SqlDataAdapter构造函数

①string strConn=“Provider=.....”;

string strSQL=“select * from Customers”;
  SqlDataAdapter da=new SqlDataAdapter(strSQL,strConn);

②string strConn=“Provider=.....”;

SqlConnection cn=new SqlConnection(strConn);
  SqlDataAdapter da=new SqlDataAdapter(“select * from Customers”,cn);

③string strConn=“Provider=.....”;

string strSQL=“select * from Customers”;
  SqlConnection cn=new SqlConnection(strConn);
  SqlCommand cmd=new SqlCommand(strSQL,cn);
  SqlDataAdapter da=new SqlDataAdapter(cmd);
3、从查询中获取结果

①使用Fill方法

SqlDataAdapter da=new SqlDataAdapter(strSQL,strConn);
    DataSet ds=new DataSet();
    da.Fill(ds);   //这里ds中的表名为Table

②使用Fill方法创建DataTable对象和DataColumn对象

SqlDataAdapter da=new SqlDataAdapter(strSQL,strConn);
    da.TableMapping.Add(“Table”,“Customers”);    
    DataSet ds=new DataSet();
    da.Fill(ds);

③使用重载Fill方法

 SqlDataAdapter.Fill(DataSet,“Customers”);
    SqlDataAdapter.Fill(DataTable);
    SqlDataAdapter.Fill(DataSet,intStartRecord,intNumRecords,“TableName”);
④开放和关闭连接

如果调用了一个SqlDataAdapter对象的Fill方法,而SelectCommand属性的Connection关闭了,那么SqlDataAdapter就会开放一个连接,然后提交查询、获取结果、最后关闭连接。如果在调用前开放了Connection,那么操作之后仍然保持开放。

SqlDataAdapter daCustomers,daOrders;
    daCustomers=new SqlDataAdapter(“Select * from Customers”,cn);
    daOrders=new SqlDataAdapter(“Select * from Orders”,cn);
    DataSet ds=new DataSet();
    cn.Open();
    daCustomers.Fill(ds);
    daOrders.Fill(ds);
    cn.Close();
⑤多次调用Fill方法
刷新DataSet中的数据,最简单的解决方法就是清空DataSet(或DataTable),然后再次调用DataAdapter对象的Fill方法。
三、属性方法事件介绍 ①AcceptChangeDuringFill:确定由DataAdapter所获取的行的RowState(默认为True)。 ②DeleteCommand:获取或设置一个 Transact-SQL 语句或存储过程,以从数据集删除记录。 ③InsertCommand:获取或设置一个 Transact-SQL 语句或存储过程,以在数据源中插入新记录。 ④SelectCommand:获取或设置一个 Transact-SQL 语句或存储过程,用于在数据源中选择记录。 ⑤UpdateCommand:获取或设置一个 Transact-SQL 语句或存储过程,用于更新数据源中的记录。 ⑥TableMappings:SqlDataAdapter用来将查询的结果映射到DataSet的信息集合。 ⑦ContinueUpdate:控制SqlDataAdapter在遇到一个错误之后是否继续提交更改(默认为false)。 ①Fill:执行存储于SelectCommand中的查询,并将结果存储在DataTable中。 ②FillSchema:为存储在SelectCommand中存储的查询获取架构信息。获取查询中的各列名称和数据类型。 ③GetFillParameters:为SelectCommand获取一个包含着参数的数组。 ④Update:向数据库提交存储在DataSet(或DataTable、DataRows)中的更改。该方法会返回一个整数值,其中包含着在数据存储中成功更新的行数。 ①FillError:当DataAdapter遇到填充DataSet或DataTable的一个错误时,该事件被触发。 ②RowUpdated:向数据库提交一个修改的行之后被触发。

③RowUpdating:向数据库提交一个修改的行之前被触发。

与Command的区别:https://blog.csdn.net/qq_39657909/article/details/80615355

参考:https://blog.csdn.net/chenjinglong/article/details/12291147

Sql Command是 sql 命令,执行后通过 sql Data Adapter 返回填入 Data Set Sql Data Adapter 有不同的构造函数, Sql Data Adapter ( Sql Command); Sql Data Adapter (string, Sql Connection); Sql Data Adapter da=new Sql Data Adapter ();da.SelectCommand... protected void Button1_Click(object sender, EventArgs e) string connStr = ConfigurationManager.ConnectionStrings[" sql ConnStr"].ConnectionString; string sql Str = "select * from UserInfo"; using ( Sql Connection co Sql Data Adapter 类表示用于填充 Data Set 和更新 SQL Server 数据库的一组数据命令和一个数据库连接。无法继承此类。命名空间:System. Data . Sql Client程序集:System. Data (在 system. data .dll Sql Data Adapter Data Set 和 SQL Server 之间的桥接器 先来看看 Sql Data Adapter 的所有成员public sealed class Sql Data Adapter : Db Data Adapter , IDb Data Adapter , I Data Adapter , ICloneable{      // Events      public event Sql RowUpdatedEventHandler RowUpdated;      public Sql Data Adapter 是数据库操作的一种形式,可以将查出的数据填充到 Data Set 。它的特点是你可以通过Update方法,将修改过的 Data Set自动更新回数据库,而不需要重新写update或者delete语句。 下面上代码: //先定义几个必要的字段 //连接字符串 private string strConn = ConfigurationManag... 一、特点介绍1、表示用于填充 Data Set 和更新 SQL Server 数据库的一组数据命令和一个数据库连接。2、在 Sql Data Adapter Data Set之间没有直接连接。当完成 Sql Data Adpater.Fill( Data Set)调用后,两个对象之间就没有连接了。二、 使用 介绍1、创建 Sql Data Adapter ... string str SQL =“Select * fr... Sql Data Adapter Data Set和 数据库的连接(桥接器),用于检索和保存数据, Sql Data Adaoter通过对数据源 使用 适当的Transact- SQL 语句映射File(他作为填充 Data Set的数据源 的数据)和Update(更改 Data Set 的数据源)提供一种桥接方式,当 Sql Data Adapter 填充 Data Set时,他为返回的数据创建必须的表和列 第一种方式(字符串查询) string strCon =“uid=sa;pwd=123456; data base=test;server=1 在winForm 实现这种效果 :         在 data GridView 任意修改数据,然后点击保存修改的按钮,将这些修改全部都一次性写入数据库。而且保存的过程 不用重新绑定 data GridView的数据源。 data GridView不用刷新。   ///          /// 将 data GridView 发生的改动提交到数据库, 使用 这种方法不用刷新 data Grid Sql Data Adapter Data Set 和更新数据库的一组数据命令和一个数据库连接的填充器。提供 Data Set 和 SQL Server 之间的桥接,用于检索和保存数据。 Sql Data Adapter 是通过对数据源映射Fill(可更改 Data Set 的数据以匹配数据源 的数据)和 Update(可更改数据源 的数据以匹配 Data Set 的数据)来提供这一桥接。 1、构 Sql Data Adapter 概述 Sql Data Adapter Data Set和 SQL Server之间的桥接器,用于检索和保存数据。 Sql Data Adapter 通过对数据源 使用 适当的Transact- SQL 语句映射 Fill(它可更改 Data Set 的数据以匹配数据 这是 Object类型的的数组定义构建初始化一体的写法 但是里面没有初始化任何Object对象 params的index一个也没有 这写法跟 Object[] params = null;的唯一区别就是 前者非null 后者params是null 其实没什么意义,只有1个数组引用,连Object类型的引用都没有定... 3、 使用 ExecuteScalar()操作数据库 4、 使用 Data Set数据集插入记录、更新数据。 1、 使用 ExecuteReader()操作数据库,执行查询操作的利器 ExecuteReader相...
 
推荐文章