数据调整类XuguDataAdapter
功能
此类会根据查询语句类成员变量生成update、insert、delete语句等。但其适用范围有限制,只有单表查询生成的结果集才支持此功能,而多表连接查询生成的结果集不支持此功能。
说明
有别于其他数据库,其他的数据库包括Oracle、SQLServer均需要表有主键或者唯一值索引等列提供标识列信息。而虚谷的驱动XuguClient采用了特殊的机制不需要此要求。即便没有主键列也可以定位修改表列数据。
类属性介绍
属性 | 说明 |
---|---|
SelectCommand | 生成当前操作结果集的查询语句。是被XuguDataAdapter的对象操作的基础数据来源 |
InsertCommand | 对当前结果集补充数据的sql语句,补充插入的记录会在Update方法调用时生效,但要求当前结果集来自单表 |
UpdateCommand | 对当前结果集更新某些数据的sql语句,更新的记录数据会在Update方法调用时生效,但要求当前结果集来自单表 |
DeleteCommand | 对当前结果集的某些记录进行删除的sql语句,删除的记录会在Update方法调用时生效,但要求当前结果集来自单表 |
类方法介绍
方法 | 参数 | 返回值 | 说明 |
---|---|---|---|
XuguDataAdapter(XuguCommand selectCommand) | selectCommand:查询语句 | - | 以查询语句初始化当前数据调整类 |
XuguDataAdapter(string selectCommandText,XuguConnection selectConnection) | selectCommandText:查询SQL语句; selectConnection:连接字符串 | - | 以查询的sql语句和适当的连接信息初始化当前数据调整类 |
XuguDataAdapter(string selectCommandText,string selectConnectionString) | selectCommandText:查询的SQL语句; selectConnectionString:连接字符串 | - | 以查询的sql语句和适当的连接串初始化当前数据调整类 |
Fill(DataSet dataset ,string srcTable) | dataset:DataSet对象; srcTable:dataset的表单名,指需要将结果集填入的表单 | 已在 System.Data.DataSet 中成功添加或刷新的行数 | 将select对应的结果集数据填入dataset里面的名为srcTable 的表单中,此时会开启数据集变更模式,如果有更新,且数据集来自单表而非来自统计或者多个表的联合查询,那么在调用update方法时则可以将更新同步推送至数据库 |
Fill(DataSet dataset) | dataset:DataSet对象 | 已在 System.Data.DataSet 中成功添加或刷新的行数 | 将当前结果集填入名为dataTable的表单中 |
Fill(DataTable dataTable) | dataTable:需要填入结果集的表单 | 已在 System.Data.DataSet 中成功添加或刷新的行数 | 将当前结果集填入名为dataTable的表单中 |
Update(DataSet dataset ,string srcTable) | dataset:DataSet对象; srcTable:dataset的表单名,指需要将结果集填入的表单 | 成功:0 | 更新dataset内名为srcTable表单中被修改过的数据,并将其同步至数据库中,但当前记录集不会由select语句进行重新刷新,例如select语句中选择的都是pid=1的情况的数据行,此时更新之后部分数据的pid不再是1 ,理应刷出当前结果集之外,但因没有进行刷新操作,因此还保留在当前结果集中可以供用户继续操作 |
Update(DataSet dataset) | dataset:DataSet对象 | 成功:0 | 更新dataset中首个表单的记录集有变更的数据并将其同步至数据库中 |
Update(DataTable dataTable) | dataTable:需要更新的表单 | 成功:0 | 更新表单中有变更的数据,将其同步至数据库中 |
Dispose() | - | - | 释放相关的资源 |