OdbcDataAdapter 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示用于填充 DataSet 和更新数据源的一组数据命令和一个数据源连接。 此类不能被继承。
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter, ICloneable, System::Data::IDbDataAdapter
public ref class OdbcDataAdapter sealed : System::Data::Common::DbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter, ICloneable, System.Data.IDbDataAdapter
public sealed class OdbcDataAdapter : System.Data.Common.DbDataAdapter
type OdbcDataAdapter = class
inherit DbDataAdapter
interface IDataAdapter
interface IDbDataAdapter
interface ICloneable
type OdbcDataAdapter = class
inherit DbDataAdapter
interface IDbDataAdapter
interface IDataAdapter
interface ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
Implements ICloneable, IDbDataAdapter
Public NotInheritable Class OdbcDataAdapter
Inherits DbDataAdapter
- 继承
- 实现
示例
以下示例使用 OdbcCommand、 OdbcDataAdapter和 OdbcConnection 来选择记录,并使用所选行填充 DataSet
。
public DataSet GetDataSetFromAdapter(
DataSet dataSet, string connectionString, string queryString)
{
using (OdbcConnection connection =
new OdbcConnection(connectionString))
{
OdbcDataAdapter adapter =
new OdbcDataAdapter(queryString, connection);
// Open the connection and fill the DataSet.
try
{
connection.Open();
adapter.Fill(dataSet);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
// The connection is automatically closed when the
// code exits the using block.
}
return dataSet;
}
Public Function GetDataSetFromAdapter( _
ByVal dataSet As DataSet, ByVal connectionString As String, _
ByVal queryString As String) As DataSet
Using connection As New OdbcConnection(connectionString)
Dim adapter As New OdbcDataAdapter(queryString, connection)
' Open the connection and fill the DataSet.
Try
connection.Open()
adapter.Fill(dataSet)
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
' The connection is automatically closed when the
' code exits the Using block.
End Using
Return dataSet
End Function
注解
OdbcDataAdapter充当 和数据源之间的桥梁,DataSet
用于检索和保存数据。
OdbcDataAdapter提供了此桥,方法是使用 Fill 将数据从数据源加载到 中DataSet,并使用 Update 将 中DataSet所做的更改发送回数据源。
OdbcDataAdapter当 填充 时DataSet,它将为返回的数据创建所需的表和列(如果它们尚不存在)。 但是,除非 将 属性设置为 AddWithKey,否则MissingSchemaAction隐式创建的架构中不包含主键信息。 在使用 填充数据FillSchema之前,还可以OdbcDataAdapter创建 的DataSet架构,包括主键信息。 有关详细信息,请参阅 向数据集添加现有约束。
注意
对没有主键列的数据源调用 Fill
方法时, OdbcDataAdapter 会尝试将唯一约束列提升为主键。 在此过程中, OdbcDataAdapter 将唯一约束标记为不可为 null。 除非唯一约束列中存在 null 值,否则此行为有效。 如果存在 null 值,该方法将 Fill
失败,并违反约束。 若要避免这种情况,请不要在唯一约束列中允许 null 值。
注意
由于本机 ODBC 驱动程序的限制,调用 FillSchema时只会返回一个DataTable驱动程序。 即使执行需要多个 DataTable 对象的 SQL 批处理语句,也是如此。
OdbcDataAdapter还包括 、SelectCommand、InsertCommandDeleteCommand、 UpdateCommand和 TableMappings
属性,以便于加载和更新数据。
构造函数
OdbcDataAdapter() |
初始化 OdbcDataAdapter 类的新实例。 |
OdbcDataAdapter(OdbcCommand) |
用指定的 SQL SELECT 语句初始化 OdbcDataAdapter 类的新实例。 |
OdbcDataAdapter(String, OdbcConnection) |
用一个 SQL SELECT 语句和一个 OdbcDataAdapter 初始化 OdbcConnection 类的新实例。 |
OdbcDataAdapter(String, String) |
使用 SQL SELECT 语句和连接字符串初始化 OdbcDataAdapter 类的新实例。 |
字段
DefaultSourceTableName |
DataAdapter 对象用于表映射的默认名称。 (继承自 DbDataAdapter) |
属性
AcceptChangesDuringFill |
获取或设置一个值,该值指示在任何 Fill 操作过程中,在将 AcceptChanges() 添加到 DataRow 之后是否在 DataTable 上调用它。 (继承自 DataAdapter) |
AcceptChangesDuringUpdate |
获取或设置在 AcceptChanges() 期间是否调用 Update(DataSet)。 (继承自 DataAdapter) |
CanRaiseEvents |
获取一个指示组件是否可以引发事件的值。 (继承自 Component) |
Container |
获取包含 IContainer 的 Component。 (继承自 Component) |
ContinueUpdateOnError |
获取或设置一个值,该值指定在行更新过程中遇到错误时是否生成异常。 (继承自 DataAdapter) |
DeleteCommand |
获取或设置 SQL 语句或存储过程,用于删除数据源中的记录。 |
DesignMode |
获取一个值,用以指示 Component 当前是否处于设计模式。 (继承自 Component) |
Events |
获取附加到此 Component 的事件处理程序的列表。 (继承自 Component) |
FillCommandBehavior |
获取或设置用于填充数据适配器的命令的行为。 (继承自 DbDataAdapter) |
FillLoadOption |
获取或设置 LoadOption,后者确定适配器如何从 DataTable 中填充 DbDataReader。 (继承自 DataAdapter) |
InsertCommand |
获取或设置 SQL 语句或用于将新记录插入数据源的存储过程。 |
MissingMappingAction |
确定传入数据没有匹配的表或列时需要执行的操作。 (继承自 DataAdapter) |
MissingSchemaAction |
确定现有 DataSet 架构与传入数据不匹配时需要执行的操作。 (继承自 DataAdapter) |
ReturnProviderSpecificTypes |
获取或设置 |
SelectCommand |
获取或设置 SQL 语句或存储过程,用于选择数据源中的记录。 |
Site | (继承自 Component) |
TableMappings |
获取一个集合,该集合提供源表和 DataTable之间的主映射。 (继承自 DataAdapter) |
UpdateBatchSize |
获取或设置一个值,该值启用或禁用批处理支持,并且指定可在一次批处理中执行的命令的数量。 (继承自 DbDataAdapter) |
UpdateCommand |
获取或设置 SQL 语句或用于在数据源中更新记录的存储过程。 |
方法
事件
Disposed |
在通过调用 Dispose() 方法释放组件时发生。 (继承自 Component) |
FillError |
在填充操作过程中出现错误时返回。 (继承自 DbDataAdapter) |
RowUpdated |
在针对数据源执行命令之后的更新操作期间发生。 |
RowUpdating |
在对数据源执行命令前的 Update(DataSet) 过程中发生。 |
显式接口实现
ICloneable.Clone() |
有关此成员的说明,请参见 Clone()。 |
IDataAdapter.TableMappings |
获取一个集合,该集合指示如何将源表映射到数据集表。 (继承自 DataAdapter) |
IDbDataAdapter.DeleteCommand |
有关此成员的说明,请参见 DeleteCommand。 |
IDbDataAdapter.InsertCommand |
有关此成员的说明,请参见 InsertCommand。 |
IDbDataAdapter.SelectCommand |
有关此成员的说明,请参见 SelectCommand。 |
IDbDataAdapter.UpdateCommand |
有关此成员的说明,请参见 UpdateCommand。 |