これが私の問題です。内部データベースの1つからのデータを表示するために小さなASP.Netサイトを構築しました。クエリがボタンクリックで実行され、4つの異なるテキストボックスに入力されたパラメータを考慮に入れるように設定しました。クエリを上位100万行程度に制限すれば、これはすべて問題なく機能します。問題は、私のテーブルに5500万行を少し超える行があることです。リミッターを外すと、常にオーバーフローとメモリエラーが発生します。驚くことではありませんが、これを修正する方法があるかどうか疑問に思いました。クエリが実行された後にのみパラメータが適用されているのではないかと思いました。不正確な場合は申し訳ありませんが、私は先週このようなことを始めたばかりです。これが私のコードです:
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<span class="style1">
<strong>Date </strong>(dd/mm/yyyy) </span>
<asp:TextBox ID="TextBox4" runat="server" Text="14/08/2009" style="margin-left: 4px"
Width="125px"></asp:TextBox>
TO
<asp:TextBox ID="TextBox5" runat="server" Width="125px" Text="30/12/2012" ></asp:TextBox>
<br />
<span class="style1"><strong>Trans # </strong></span>
<asp:TextBox ID="TextBox2" runat="server" style="margin-left: 94px"
Width="125px"></asp:TextBox>
<br />
<strong><span class="style1">Part </span></strong>
<asp:TextBox ID="TextBox3" runat="server" style="margin-left: 117px"
Width="125px"></asp:TextBox>
<br />
<br />
<asp:Button ID="Button1" runat="server" Text="Go" onclick="Button1_Click" />
<br />
<br />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"
ForeColor="#333333" GridLines="None" HorizontalAlign="Left"
onselectedindexchanged="GridView1_SelectedIndexChanged"
style="text-align: center" >
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<Columns>
<asp:BoundField DataField="C6946_TRANS_TYPE" HeaderText="Type de Transaction/Transaction Type"
SortExpression="C6946_TRANS_TYPE" />
<asp:BoundField DataField="C6946_TRANS_DATE"
HtmlEncode="false" HeaderText="Date de Transaction/Transaction Date" ConvertEmptyStringToNull="false"
SortExpression="C6946_TRANS_DATE" FooterStyle-HorizontalAlign="Right" DataFormatString="{0:d}"
>
「」
SelectCommand="SELECT C6946_TRANS_TYPE, C6946_TRANS_DATE, C6946_SO, C6946_LATE_FLAG, C6946_TRANS_NUM, ALIGNED_PART_NUMBER, C1001_ENG_PART_NUMBER, C6946_PART_KEY, PART_DESCRIPTION, C6946_RECORD FROM DWH.AIXW2S_T6946_TRANS_IMS"
FilterExpression= "C6946_TRANS_NUM LIKE '%{0}%' AND (C6946_PART_KEY LIKE '%{1}%' OR ALIGNED_PART_NUMBER LIKE '%{1}%' OR C1001_ENG_PART_NUMBER LIKE '%{1}%') AND C6946_TRANS_DATE >= #{2}# AND C6946_TRANS_DATE <= #{3}#">
<FilterParameters>
<asp:ControlParameter ControlID="TextBox2" Name="C6946_TRANS_NUM" PropertyName="text" Type="String" DefaultValue="" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="TextBox3" Name="C6946_PART_KEY" PropertyName="text" Type="string" DefaultValue="" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="TextBox4" Name="C6946_TRANS_DATE" PropertyName="text" Type="DateTime" DefaultValue="" ConvertEmptyStringToNull="false"/>
<asp:ControlParameter ControlID="TextBox5" Name="C6946_TRANS_DATE" PropertyName="text" Type="DateTime" DefaultValue="" ConvertEmptyStringToNull="false"/>
</FilterParameters>
</asp:SqlDataSource>
<br />
</asp:Content>