0

当您尝试在我的 oracle 数据库中插入一行时,我遇到了这个错误。我使用 aspxgridview 提供的删除、插入功能。

我听说它可能是一个“;” 在 sql 指令的末尾但没有“;” 在这个 sql 语句中,这是带有插入、更新等 sql 指令的代码......

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
           ConflictDetection="CompareAllValues" 
           ConnectionString="<%$ ConnectionStrings:ConnectionStringora %>" 
           DeleteCommand="DELETE FROM &quot;MAQUINA&quot; WHERE &quot;PATENTE&quot; = ? AND &quot;MARCA&quot; = ? AND &quot;MODELO&quot; = ? AND &quot;AÑO&quot; = ? AND &quot;FECHA_ADQUISICION&quot; = ? AND &quot;ESTADO&quot; = ? AND &quot;IDCONDUCTOR&quot; = ? AND &quot;IDMANTENCION&quot; = ?" 
           InsertCommand="INSERT INTO &quot;MAQUINA&quot; (&quot;PATENTE&quot;, &quot;MARCA&quot;, &quot;MODELO&quot;, &quot;AÑO&quot;, &quot;FECHA_ADQUISICION&quot;, &quot;ESTADO&quot;, &quot;IDCONDUCTOR&quot;, &quot;IDMANTENCION&quot;) VALUES (?, ?, ?, ?, ?, ?, ?, ?)" 
           OldValuesParameterFormatString="original_{0}" 
           ProviderName="<%$ ConnectionStrings:ConnectionStringora.ProviderName %>" 
           SelectCommand="SELECT &quot;PATENTE&quot;, &quot;MARCA&quot;, &quot;MODELO&quot;, &quot;AÑO&quot;, &quot;FECHA_ADQUISICION&quot;, &quot;ESTADO&quot;, &quot;IDCONDUCTOR&quot;, &quot;IDMANTENCION&quot; FROM &quot;MAQUINA&quot;" 
           UpdateCommand="UPDATE &quot;MAQUINA&quot; SET &quot;MARCA&quot; = ?, &quot;MODELO&quot; = ?, &quot;AÑO&quot; = ?, &quot;FECHA_ADQUISICION&quot; = ?, &quot;ESTADO&quot; = ?, &quot;IDCONDUCTOR&quot; = ?, &quot;IDMANTENCION&quot; = ? WHERE &quot;PATENTE&quot; = ? AND &quot;MARCA&quot; = ? AND &quot;MODELO&quot; = ? AND &quot;AÑO&quot; = ? AND &quot;FECHA_ADQUISICION&quot; = ? AND &quot;ESTADO&quot; = ? AND &quot;IDCONDUCTOR&quot; = ? AND &quot;IDMANTENCION&quot; = ?">

我认为可能导致此问题的另一件事是日期字段(FECHA_ADQUISICION).. aspxgridview 使用格式 dd-mm-yyy,我不知道 oracle 是否接受,因为当我尝试从“服务器”插入时explorer”(您可以查看数据库的那部分)我的日期有问题,我收到“ORA-01843 not a valid month”错误..所以我无法从那里插入。

请帮忙!

4

1 回答 1

0

&quot;是你的问题。将其替换为单引号 ( ') 即可。

*更新:不要对你的 sql 查询进行硬编码,而是从后面的代码中传递它。它会起作用的。*

于 2012-10-27T22:06:10.597 回答