# C1.DataConnector.AdoNet.C1CommandBase.ExecuteNonQueryCoreAsync

## Content

<div class="doc-site-dotnet-api-container">



<h1 id="C1_DataConnector_AdoNet_C1CommandBase_ExecuteNonQueryCoreAsync_" data-uid="C1.DataConnector.AdoNet.C1CommandBase.ExecuteNonQueryCoreAsync*">ExecuteNonQueryCoreAsync Method
</h1>
<div class="markdown level0 summary"></div>
<div class="markdown level0 conceptual"></div>



<a id="C1_DataConnector_AdoNet_C1CommandBase_ExecuteNonQueryCoreAsync_" data-uid="C1.DataConnector.AdoNet.C1CommandBase.ExecuteNonQueryCoreAsync*"></a>
<h4 id="C1_DataConnector_AdoNet_C1CommandBase_ExecuteNonQueryCoreAsync_C1_DataConnector_ISQLStatement_System_Threading_CancellationToken_C1_DataConnector_SourceTable_" data-uid="C1.DataConnector.AdoNet.C1CommandBase.ExecuteNonQueryCoreAsync(C1.DataConnector.ISQLStatement,System.Threading.CancellationToken,C1.DataConnector.SourceTable)">ExecuteNonQueryCoreAsync(ISQLStatement, CancellationToken, SourceTable)</h4>
<div class="markdown level1 summary"><p>The abstract core method provided to execute a non-query statement.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="declaration">Declaration</h5>
<div class="codewrapper">
  <pre><code class="lang-csharp hljs">protected abstract Task&lt;int&gt; ExecuteNonQueryCoreAsync(ISQLStatement statement, CancellationToken token, SourceTable sourceTable = null)</code></pre>
</div>
<div class="codewrapper">
  <pre><code class="lang-vbnet hljs">Protected MustOverride Function ExecuteNonQueryCoreAsync(statement As ISQLStatement, token As CancellationToken, Optional sourceTable As SourceTable = Nothing) As Task(Of Integer)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Name</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="../C1.DataConnector/C1.DataConnector.ISQLStatement.html">ISQLStatement</a></td>
      <td><span class="parametername">statement</span></td>
      <td><p>The statement to be executed as non query.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.threading.cancellationtoken">CancellationToken</a></td>
      <td><span class="parametername">token</span></td>
      <td><p>The cancellation token to abort the operation at any moment.</p>
</td>
    </tr>
    <tr>
      <td><a class="xref" href="../C1.DataConnector/C1.DataConnector.SourceTable.html">SourceTable</a></td>
      <td><span class="parametername">sourceTable</span></td>
      <td><p>The source table to be sued to perform the non query.</p>
</td>
    </tr>
  </tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-condensed">
  <thead>
    <tr>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><a class="xref" href="https://learn.microsoft.com/dotnet/api/system.threading.tasks.task-1">Task</a>&lt;<a class="xref" href="https://learn.microsoft.com/dotnet/api/system.int32">int</a>&gt;</td>
      <td><p>The number rows effected. Otherwise, -1 when an error happens.</p>
</td>
    </tr>
  </tbody>
</table>
</div>
