<?xml version="1.0" encoding="utf-8"?>
<Type Name="OleDbCommandBuilder" FullName="System.Data.OleDb.OleDbCommandBuilder">
  <TypeSignature Language="C#" Maintainer="auto" Value="public sealed class OleDbCommandBuilder : System.Data.Common.DbCommandBuilder" />
  <AssemblyInfo>
    <AssemblyName>System.Data</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>1.0.3300.0</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
  <Base>
    <BaseTypeName>System.Data.Common.DbCommandBuilder</BaseTypeName>
  </Base>
  <Interfaces>
  </Interfaces>
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>The <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> does not automatically generate the SQL statements required to reconcile changes made to a <see cref="T:System.Data.DataSet" /> with the associated data source. However, you can create an <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> object to automatically generate SQL statements for single-table updates if you set the <see cref="P:System.Data.OleDb.OleDbDataAdapter.SelectCommand" /> property of the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />. Then, any additional SQL statements that you do not set are generated by the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" />.</para>
      <para>The <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> registers itself as a listener for <see cref="E:System.Data.OleDb.OleDbDataAdapter.RowUpdating" /> events whenever you set the <see cref="P:System.Data.OleDb.OleDbCommandBuilder.DataAdapter" /> property. You can only associate one <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> or <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> object with each other at one time.</para>
      <para>To generate INSERT, UPDATE, or DELETE statements, the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> uses the <see cref="P:System.Data.OleDb.OleDbDataAdapter.SelectCommand" /> property to retrieve a required set of metadata automatically. If you change the <see cref="P:System.Data.OleDb.OleDbDataAdapter.SelectCommand" /> after the metadata is retrieved, such as after the first update, you should call the <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> method to update the metadata.</para>
      <para>The <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> also uses the <see cref="P:System.Data.OleDb.OleDbCommand.Connection" />, <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" />, and <see cref="P:System.Data.OleDb.OleDbCommand.Transaction" /> properties referenced by the <see cref="P:System.Data.OleDb.OleDbDataAdapter.SelectCommand" />. The user should call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if one or more of these properties are modified, or if the <see cref="P:System.Data.OleDb.OleDbDataAdapter.SelectCommand" /> itself is replaced. Otherwise the <see cref="P:System.Data.OleDb.OleDbDataAdapter.InsertCommand" />, <see cref="P:System.Data.OleDb.OleDbDataAdapter.UpdateCommand" />, and <see cref="P:System.Data.OleDb.OleDbDataAdapter.DeleteCommand" /> properties retain their previous values.</para>
      <para>If you call <see cref="M:System.ComponentModel.Component.Dispose" />, the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> is disassociated from the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />, and the generated commands are no longer used.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Automatically generates single-table commands that are used to reconcile changes made to a <see cref="T:System.Data.DataSet" /> with the associated database. This class cannot be inherited.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public OleDbCommandBuilder ();" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters />
      <Docs>
        <remarks>To be added</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> class.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public OleDbCommandBuilder (System.Data.OleDb.OleDbDataAdapter adapter);" />
      <MemberType>Constructor</MemberType>
      <ReturnValue />
      <Parameters>
        <Parameter Name="adapter" Type="System.Data.OleDb.OleDbDataAdapter" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> registers itself as a listener for <see cref="E:System.Data.OleDb.OleDbDataAdapter.RowUpdating" /> events that are generated by the <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> specified in this property.</para>
          <para>When you create a new instance <see cref="T:System.Data.OleDb.OleDbCommandBuilder" />, any existing <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> associated with this <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> is released.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> class with the associated <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> object.</para>
        </summary>
        <param name="adapter">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Data.OleDb.OleDbDataAdapter" />. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="ApplyParameterInfo">
      <MemberSignature Language="C#" Value="protected override void ApplyParameterInfo (System.Data.Common.DbParameter dbParameter, System.Data.DataRow row, System.Data.StatementType statementType, bool whereClause);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="dbParameter" Type="System.Data.Common.DbParameter" />
        <Parameter Name="row" Type="System.Data.DataRow" />
        <Parameter Name="statementType" Type="System.Data.StatementType" />
        <Parameter Name="whereClause" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="dbParameter">To be added.</param>
        <param name="row">To be added.</param>
        <param name="statementType">To be added.</param>
        <param name="whereClause">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="DataAdapter">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbDataAdapter DataAdapter { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbDataAdapter</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <value>To be added: an object of type 'OleDbDataAdapter'</value>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> registers itself as a listener for <see cref="E:System.Data.OleDb.OleDbDataAdapter.RowUpdating" /> events that are generated by the <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> specified in this property.</para>
          <para>When you create a new instance <see cref="T:System.Data.OleDb.OleDbCommandBuilder" />, any existing <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> associated with this <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> is released.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets or sets an <see cref="T:System.Data.OleDb.OleDbDataAdapter" /> object for which SQL statements are automatically generated.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DefaultValue(null)</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="DeriveParameters">
      <MemberSignature Language="C#" Value="public static void DeriveParameters (System.Data.OleDb.OleDbCommand command);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="command" Type="System.Data.OleDb.OleDbCommand" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>
            <see cref="M:System.Data.OleDb.OleDbCommandBuilder.DeriveParameters(System.Data.OleDb.OleDbCommand)" /> overwrites any existing parameter information for the <see cref="T:System.Data.OleDb.OleDbCommand" />.</para>
          <para>
            <see cref="M:System.Data.OleDb.OleDbCommandBuilder.DeriveParameters(System.Data.OleDb.OleDbCommand)" /> requires an additional call to the data source to obtain the information. If the parameter information is known in advance, it is more efficient to populate the parameters collection by setting the information explicitly.</para>
          <para>You can only use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.DeriveParameters(System.Data.OleDb.OleDbCommand)" /> with stored procedures. You cannot use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.DeriveParameters(System.Data.OleDb.OleDbCommand)" /> to populate the <see cref="T:System.Data.OleDb.OleDbParameterCollection" /> with arbitrary Transact-SQL statements, such as a parameterized SELECT statement.</para>
          <para>For more information, see <format type="text/html"><a href="537d8a2c-d40b-4000-83eb-bc1fcc93f707">Using Stored Procedures with a Command</a></format>.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Retrieves parameter information from the stored procedure specified in the <see cref="T:System.Data.OleDb.OleDbCommand" /> and populates the <see cref="P:System.Data.OleDb.OleDbCommand.Parameters" /> collection of the specified <see cref="T:System.Data.OleDb.OleDbCommand" /> object.</para>
        </summary>
        <param name="command">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Data.OleDb.OleDbCommand" /> referencing the stored procedure from which the parameter information is to be derived. The derived parameters are added to the <see cref="P:System.Data.OleDb.OleDbCommand.Parameters" /> collection of the <see cref="T:System.Data.OleDb.OleDbCommand" />. </param>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Dispose">
      <MemberSignature Language="C#" Value="protected override void Dispose (bool disposing);" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="disposing" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <param name="disposing">To be added: an object of type 'bool'</param>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetDeleteCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetDeleteCommand ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> method for informational or troubleshooting purposes because it returns the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform deletions at the data source.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform deletions.</para>
        </returns>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetDeleteCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetDeleteCommand (bool useColumnsForParameterNames);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="useColumnsForParameterNames" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> method for informational or troubleshooting purposes because it returns the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetDeleteCommand" />.</para>
          <para>The default behavior, when generating parameter names, is to use @p1, @p2, and so on for the various parameters. Passing true for the <paramref name="useColumnsForParameterNames" /> parameter lets you force the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> to generate parameters based on the column names instead. This succeeds only if the following conditions are met:</para>
          <list type="bullet">
            <item>
              <para>The <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNameMaxLength" /> has been specified and its length is equal to or greater than the generated parameter name.</para>
            </item>
            <item>
              <para>The generated parameter name meets the criteria specified in the <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNamePattern" /> regular expression.</para>
            </item>
            <item>
              <para>A <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterMarkerFormat" /> is specified.</para>
            </item>
          </list>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform deletions at the data source.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform deletions.</para>
        </returns>
        <param name="useColumnsForParameterNames">
          <attribution license="cc4" from="Microsoft" modified="false" />If true, generate parameter names matching column names, if it is possible. If false, generate @p1, @p2, and so on.</param>
      </Docs>
    </Member>
    <Member MemberName="GetInsertCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetInsertCommand ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> method for informational or troubleshooting purposes because it returns the text of the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform insertions at the data source.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform insertions.</para>
        </returns>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetInsertCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetInsertCommand (bool useColumnsForParameterNames);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="useColumnsForParameterNames" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> method for informational or troubleshooting purposes because it returns the text of the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand" />.</para>
          <para>The default behavior, when generating parameter names, is to use @p1, @p2, and so on for the various parameters. Passing true for the <paramref name="useColumnsForParameterNames" /> parameter lets you force the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> to generate parameters based on the column names instead. This succeeds only if the following conditions are met:</para>
          <list type="bullet">
            <item>
              <para>The <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNameMaxLength" /> has been specified and its length is equal to or greater than the generated parameter name.</para>
            </item>
            <item>
              <para>The generated parameter name meets the criteria specified in the <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNamePattern" /> regular expression.</para>
            </item>
            <item>
              <para>A <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterMarkerFormat" /> is specified.</para>
            </item>
          </list>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform insertions at the data source.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform insertions.</para>
        </returns>
        <param name="useColumnsForParameterNames">
          <attribution license="cc4" from="Microsoft" modified="false" />If true, generate parameter names matching column names, if it is possible. If false, generate @p1, @p2, and so on.</param>
      </Docs>
    </Member>
    <Member MemberName="GetParameterName">
      <MemberSignature Language="C#" Value="protected override string GetParameterName (int position);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="position" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="position">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetParameterName">
      <MemberSignature Language="C#" Value="protected override string GetParameterName (string parameterName);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="parameterName" Type="System.String" />
      </Parameters>
      <Docs>
        <param name="parameterName">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetParameterPlaceholder">
      <MemberSignature Language="C#" Value="protected override string GetParameterPlaceholder (int position);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="position" Type="System.Int32" />
      </Parameters>
      <Docs>
        <param name="position">To be added.</param>
        <summary>To be added.</summary>
        <returns>To be added.</returns>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="GetUpdateCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetUpdateCommand ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> method for informational or troubleshooting purposes because it returns the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" />.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform updates at the data source.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform updates.</para>
        </returns>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="GetUpdateCommand">
      <MemberSignature Language="C#" Value="public System.Data.OleDb.OleDbCommand GetUpdateCommand (bool useColumnsForParameterNames);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Data.OleDb.OleDbCommand</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="useColumnsForParameterNames" Type="System.Boolean" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>An application can use the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> method for informational or troubleshooting purposes because it returns the <see cref="T:System.Data.OleDb.OleDbCommand" /> object to be executed.</para>
          <para>You can also use <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> as the basis of a modified command. For example, you might call <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> and modify the <see cref="P:System.Data.OleDb.OleDbCommand.CommandTimeout" /> value, and then explicitly set that on the <see cref="T:System.Data.OleDb.OleDbDataAdapter" />.</para>
          <para>After the SQL statement is first generated, the application must explicitly call <see cref="M:System.Data.Common.DbCommandBuilder.RefreshSchema" /> if it changes the statement in any way. Otherwise, the <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" /> will be still be using information from the previous statement, which might not be correct. The SQL statements are first generated when the application calls either <see cref="M:System.Data.OleDb.OleDbDataAdapter.Update(System.Data.DataSet)" /> or <see cref="M:System.Data.OleDb.OleDbCommandBuilder.GetUpdateCommand" />.</para>
          <para>The default behavior, when generating parameter names, is to use @p1, @p2, and so on for the various parameters. Passing true for the <paramref name="useColumnsForParameterNames" /> parameter lets you force the <see cref="T:System.Data.OleDb.OleDbCommandBuilder" /> to generate parameters based on the column names instead. This succeeds only if the following conditions are met:</para>
          <list type="bullet">
            <item>
              <para>The <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNameMaxLength" /> has been specified and its length is equal to or greater than the generated parameter name.</para>
            </item>
            <item>
              <para>The generated parameter name meets the criteria specified in the <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterNamePattern" /> regular expression.</para>
            </item>
            <item>
              <para>A <see cref="F:System.Data.Common.DbMetaDataColumnNames.ParameterMarkerFormat" /> is specified.</para>
            </item>
          </list>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Gets the automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform updates at the data source, optionally using columns for parameter names.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The automatically generated <see cref="T:System.Data.OleDb.OleDbCommand" /> object required to perform updates.</para>
        </returns>
        <param name="useColumnsForParameterNames">
          <attribution license="cc4" from="Microsoft" modified="false" />If true, generate parameter names matching column names, if it is possible. If false, generate @p1, @p2, and so on.</param>
      </Docs>
    </Member>
    <Member MemberName="QuoteIdentifier">
      <MemberSignature Language="C#" Value="public override string QuoteIdentifier (string unquotedIdentifier);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="unquotedIdentifier" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. This includes correctly escaping any embedded quotes in the identifier.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The quoted version of the identifier. Embedded quotes within the identifier are correctly escaped.</para>
        </returns>
        <param name="unquotedIdentifier">
          <attribution license="cc4" from="Microsoft" modified="false" />The original unquoted identifier.</param>
      </Docs>
    </Member>
    <Member MemberName="QuoteIdentifier">
      <MemberSignature Language="C#" Value="public string QuoteIdentifier (string unquotedIdentifier, System.Data.OleDb.OleDbConnection connection);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="unquotedIdentifier" Type="System.String" />
        <Parameter Name="connection" Type="System.Data.OleDb.OleDbConnection" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier. This includes correctly escaping any embedded quotes in the identifier.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The quoted version of the identifier. Embedded quotes within the identifier are correctly escaped.</para>
        </returns>
        <param name="unquotedIdentifier">
          <attribution license="cc4" from="Microsoft" modified="false" />The unquoted identifier to be returned in quoted format.</param>
        <param name="connection">
          <attribution license="cc4" from="Microsoft" modified="false" />When a connection is passed, causes the managed wrapper to get the quote character from the OLE DB provider. When no connection is passed, the string is quoted using values from <see cref="P:System.Data.Common.DbCommandBuilder.QuotePrefix" /> and <see cref="P:System.Data.Common.DbCommandBuilder.QuoteSuffix" />.</param>
      </Docs>
    </Member>
    <Member MemberName="QuotePrefix">
      <MemberSignature Language="C#" Value="public virtual string QuotePrefix { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <value>To be added: an object of type 'string'</value>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DefaultValue("")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="QuoteSuffix">
      <MemberSignature Language="C#" Value="public virtual string QuoteSuffix { set; get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
      </Parameters>
      <Docs>
        <summary>To be added</summary>
        <value>To be added: an object of type 'string'</value>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <Attributes>
        <Attribute>
          <AttributeName>System.ComponentModel.DefaultValue("")</AttributeName>
        </Attribute>
      </Attributes>
    </Member>
    <Member MemberName="RefreshSchema">
      <MemberSignature Language="C#" Value="public void RefreshSchema ();" />
      <MemberType>Method</MemberType>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters />
      <Docs>
        <summary>To be added</summary>
        <remarks>To be added</remarks>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="SetRowUpdatingHandler">
      <MemberSignature Language="C#" Value="protected override void SetRowUpdatingHandler (System.Data.Common.DbDataAdapter adapter);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="adapter" Type="System.Data.Common.DbDataAdapter" />
      </Parameters>
      <Docs>
        <param name="adapter">To be added.</param>
        <summary>To be added.</summary>
        <remarks>To be added.</remarks>
      </Docs>
    </Member>
    <Member MemberName="UnquoteIdentifier">
      <MemberSignature Language="C#" Value="public override string UnquoteIdentifier (string quotedIdentifier);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="quotedIdentifier" Type="System.String" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Given a quoted identifier, returns the correct unquoted form of that identifier. This includes correctly un-escaping any embedded quotes in the identifier.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The unquoted identifier, with embedded quotes correctly un-escaped.</para>
        </returns>
        <param name="quotedIdentifier">
          <attribution license="cc4" from="Microsoft" modified="false" />The identifier that will have its embedded quotes removed.</param>
      </Docs>
    </Member>
    <Member MemberName="UnquoteIdentifier">
      <MemberSignature Language="C#" Value="public string UnquoteIdentifier (string quotedIdentifier, System.Data.OleDb.OleDbConnection connection);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.String</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="quotedIdentifier" Type="System.String" />
        <Parameter Name="connection" Type="System.Data.OleDb.OleDbConnection" />
      </Parameters>
      <Docs>
        <remarks>To be added.</remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Given a quoted identifier, returns the correct unquoted form of that identifier. This includes correctly un-escaping any embedded quotes in the identifier.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The unquoted identifier, with embedded quotes correctly un-escaped.</para>
        </returns>
        <param name="quotedIdentifier">
          <attribution license="cc4" from="Microsoft" modified="false" />The identifier that will have its embedded quotes removed.</param>
        <param name="connection">
          <attribution license="cc4" from="Microsoft" modified="false" />The <see cref="T:System.Data.OleDb.OleDbConnection" />.</param>
      </Docs>
    </Member>
  </Members>
</Type>