【问题标题】:Issue with SqlDataSource in ASP.NET 4.5ASP.NET 4.5 中的 SqlDataSource 问题
【发布时间】:2013-07-01 15:05:25
【问题描述】:

由于某种原因,我无法让更新命令在 ASP.NET 4.5 中的 SqlDataSource 上运行。这就是我目前设置的。它应该从名为 GridView1 的 GridView 中获取值,并使用适当类型的数据字段。

我得到的确切错误是ORA-01747: invalid user.table.column, table.column, or column specification

有人知道我的配置可能有什么问题吗?谢谢!

<asp:SqlDataSource ID="SqlDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:TEST %>" ProviderName="<%$ ConnectionStrings:BTEST.ProviderName %>"
                   SelectCommand="SELECT * FROM &quot;Z_PCARD_PRELOAD&quot;"
                   UpdateCommand="UPDATE &quot;Z_PCARD_PRELOAD&quot;
                                  SET [PP_ACCI] = @PP_ACCI, [PP_ACCT] = @PP_ACCT, [PP_ACTV] = @PP_ACTV, [PP_EMPL_ID] = @PP_EMPL_ID
                                  WHERE [PP_TRANS_REF_NUM] = @PP_TRANS_REF_NUM" >
    <UpdateParameters>
        <asp:ControlParameter ControlID="GridView1" Name="PP_ACCI" PropertyName="SelectedValue" Type="String" />
        <asp:ControlParameter ControlID="GridView1" Name="PP_ACCT" PropertyName="SelectedValue" Type="String" />
        <asp:ControlParameter ControlID="GridView1" Name="PP_ACTV" PropertyName="SelectedValue" Type="String" />
        <asp:ControlParameter ControlID="GridView1" Name="PP_EMPL_ID" PropertyName="SelectedValue" Type="String" />
        <asp:ControlParameter ControlID="GridView1" Name="PP_TRANS_REF_NUM" PropertyName="SelectedValue" Type="String" />
    </UpdateParameters>
</asp:SqlDataSource>

【问题讨论】:

  • 选择有效吗?没想到“是表名的有效包装器吗?也许是[]
  • 选择确实如此。它们是在生成 SelectCommand 时添加的。我不得不手动添加 UpdateCommand,因为我没有更新每一列。

标签: asp.net sql oracle


【解决方案1】:

看起来 Oracle DB 要求我使用 :parameter 语法而不是 @parameter 语法。供日后参考。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-08
    • 1970-01-01
    • 1970-01-01
    • 2012-12-08
    • 1970-01-01
    • 2015-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多