Я новичок, когда дело доходит до кодирования ASP.NET, поэтому, пожалуйста, простите меня, если я пропущу что-то очевидное.ORA-01006: переменная связывания не существует ASP.NET
Я пишу страницу ввода данных, где у меня установлен FormView по умолчанию для вставки для обработки вставки, и у меня есть gridview для просмотра данных в таблице и для редактирования.
Редактирование gridview прекрасно работает, однако FormView меня подводит. Когда я ударил вставку в FormView, я получил ORA-01006: переменная связывания не существует.
SQLDataSource, который я использую, указывает на БД Oracle.
Мой FormView код:
<asp:FormView ID="FormView1" runat="server" CellPadding="4" DataKeyNames="DATAKEY" DataSourceID="Oracle" DefaultMode="Insert" ForeColor="#333333" HorizontalAlign="Left">
<EditRowStyle BackColor="#999999" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<InsertItemTemplate>
<table>
<tr>
<td align="center">Year :</td>
<td width="30px"><asp:TextBox ID="YearTextBox" runat="server" Text='<%# Bind("YEAR") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">Week :</td>
<td width="30px"><asp:TextBox ID="WeekTextBox" runat="server" Text='<%# Bind("WEEK") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">Store :</td>
<td width="30px"><asp:TextBox ID="StoreTextBox" runat="server" Text='<%# Bind("LOC_LOC_ID") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">Brand :</td>
<td width="30px"><asp:TextBox ID="BrandTextBox" runat="server" Text='<%# Bind("BRAND") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">CO_WK_PERC :</td>
<td width="30px"><asp:TextBox ID="CoWkPercTextBox" runat="server" Text='<%# Bind("CO_WK_PERC") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">CO_STD_PERC :</td>
<td width="30px"><asp:TextBox ID="CoStdPercTextBox" runat="server" Text='<%# Bind("CO_STD_PERC") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">INT_WK_PERC :</td>
<td width="30px"><asp:TextBox ID="IntWkPercTextBox" runat="server" Text='<%# Bind("INT_WK_PERC") %>'></asp:TextBox><br /></td>
</tr>
<tr>
<td align="center">INT_STD_PERC :</td>
<td width="30px"><asp:TextBox ID="IntStdPercTextBox" runat="server" Text='<%# Bind("INT_STD_PERC") %>' Enabled='<%# Bind("INT_STD_PERC") %>'></asp:TextBox><br /></td>
</tr>
</table>
<div class="auto-style1">
<asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert" Text="Insert" />
<asp:LinkButton ID="InsertCancelButton" runat="server" CausesValidation="False" CommandName="Cancel" Text="Cancel" />
</div>
</InsertItemTemplate>
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
</asp:FormView>
Мой SqlDataSource является:
<asp:SqlDataSource ID="Oracle"
runat="server"
ConnectionString="<%$ ConnectionStrings:ORACLE_IISUSER %>"
DeleteCommand="DELETE FROM "RGP_PLAN_PERC_TEST_BK" WHERE "DATAKEY" = ?"
InsertCommand="INSERT INTO "RGP_PLAN_PERC_TEST_BK" ("YEAR", "WEEK", "BRAND", "CO_WK_PERC", "CO_STD_PERC", "INT_WK_PERC", "INT_STD_PERC", "LOC_LOC_ID", "DATAKEY") VALUES (:YEAR, :WEEK, :BRAND, :CO_WK_PERC, :CO_STD_PERC, :INT_WK_PERC, :INT_STD_PERC, :LOC_LOC_ID, (SELECT (MAX(DATAKEY) +1) FROM RGP_PLAN_PERC_TEST_BK))"
ProviderName="<%$ ConnectionStrings:ORACLE_IISUSER.ProviderName %>"
SelectCommand="SELECT * FROM "RGP_PLAN_PERC_TEST_BK" ORDER BY "YEAR" DESC, "WEEK" DESC, "LOC_LOC_ID""
UpdateCommand="UPDATE "RGP_PLAN_PERC_TEST_BK" SET "YEAR" = :YEAR, "WEEK" = :WEEK, "BRAND" = :BRAND, "CO_WK_PERC" = :CO_WK_PERC, "CO_STD_PERC" = :CO_STD_PERC, "INT_WK_PERC" = :INT_WK_PERC, "INT_STD_PERC" = :INT_STD_PERC, "LOC_LOC_ID" = :LOC_LOC_ID WHERE "DATAKEY" = :DATAKEY" OnSelecting="Oracle_Selecting">
<DeleteParameters>
<asp:Parameter Name="DATAKEY" Type="Decimal" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="YEAR" Type="String" />
<asp:Parameter Name="WEEK" Type="String" />
<asp:Parameter Name="BRAND" Type="String" />
<asp:Parameter Name="CO_WK_PERC" Type="Decimal" />
<asp:Parameter Name="CO_STD_PERC" Type="Decimal" />
<asp:Parameter Name="INT_WK_PERC" Type="Decimal" />
<asp:Parameter Name="INT_STD_PERC" Type="Decimal" />
<asp:Parameter Name="LOC_LOC_ID" Type="String" />
<asp:Parameter Name="DATAKEY" Type="Decimal" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="YEAR" Type="String" />
<asp:Parameter Name="WEEK" Type="String" />
<asp:Parameter Name="BRAND" Type="String" />
<asp:Parameter Name="CO_WK_PERC" Type="Decimal" />
<asp:Parameter Name="CO_STD_PERC" Type="Decimal" />
<asp:Parameter Name="INT_WK_PERC" Type="Decimal" />
<asp:Parameter Name="INT_STD_PERC" Type="Decimal" />
<asp:Parameter Name="LOC_LOC_ID" Type="String" />
<asp:Parameter Name="DATAKEY" Type="Decimal" />
</UpdateParameters>
</asp:SqlDataSource>
Я не уверен, если это потому, что я не связан с параметрами FormView правильно?
Я надеюсь, что кто-то может пролить свет на мою проблему?
С наилучшими пожеланиями
Том