How to search a database in ASP.NET using a text box
我有一个快速的问题,我正在建立一个ASP.NET网站并建立了一个数据库(SQL Server 2008)。我的一页中,我将显示数据库的所有条目,并在顶部显示一个搜索文本框。我将如何处理用户输入的值,并使用该字符串仅显示适用于它的数据条目。
这是我的.aspx文件代码
1 | <%@ Page Title="" Language="vb" AutoEventWireup="false" MasterPageFile="~/Layout.Master" CodeBehind="db.aspx.vb" Inherits="Project4.db" %> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | <fieldset> <legend>Search</legend> Last Name: </asp:TextBox> <br /> </fieldset> <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" BackColor="White" BorderColor="#3366CC" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataKeyNames="FirstName,LastName,PhoneNum" AllowPaging="True"> <Columns> <asp:BoundField DataField="FirstName" HeaderText="FirstName" SortExpression="FirstName" ReadOnly="True" /> <asp:BoundField DataField="LastName" HeaderText="LastName" SortExpression="LastName" ReadOnly="True" /> <asp:BoundField DataField="PhoneNum" HeaderText="PhoneNum" SortExpression="PhoneNum" ReadOnly="True" /> </Columns> <FooterStyle BackColor="#99CCCC" ForeColor="#003399" /> <HeaderStyle BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" /> <PagerStyle BackColor="#99CCCC" ForeColor="#003399" HorizontalAlign="Left" /> <RowStyle BackColor="White" ForeColor="#003399" /> <SelectedRowStyle BackColor="#009999" Font-Bold="True" ForeColor="#CCFF99" /> <SortedAscendingCellStyle BackColor="#EDF6F6" /> <SortedAscendingHeaderStyle BackColor="#0D4AC4" /> <SortedDescendingCellStyle BackColor="#D6DFDF" /> <SortedDescendingHeaderStyle BackColor="#002876" /> </asp:GridView> <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:Database1ConnectionString %>" SelectCommand="SELECT [FirstName], [LastName], [PhoneNum], [Email] FROM [MailList]" ViewStateMode="Disabled" OldValuesParameterFormatString="original_{0}"> </asp:SqlDataSource> |
现在,我想搜索字符串并将其与数据库的第二列LastName进行比较,并仅显示姓氏与之匹配的记录。任何帮助将不胜感激
这应该非常接近,尽管它是从内存中读取的,所以可能有点偏离。尽管我认为
足以使您朝正确的方向前进
1 2 3 4 5 6 7 8 | <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:Database1ConnectionString %>" SelectCommand="SELECT [FirstName], [LastName], [PhoneNum], [Email] FROM [MailList] WHERE [LastName] = @lastName" ViewStateMode="Disabled" OldValuesParameterFormatString="original_{0}"> <SelectParameters> </SelectParameters> </asp:SqlDataSource> |
您必须配置数据库以执行包含和自由文本查询,这样您就可以根据与字段条件匹配的数据对数据库进行搜索。
如何搜索数据库