gridview 实现多字段综合查询
2008-05-22 16:46
381 查看
最近写一个模糊综合多个字段的数据表查询,又要保持gridview的现有的功能。如添加,删除,更新,排序。为了简单少些代码,发现如果文本框不填的化,它一般会返回null 或空值,这样就可以使用 like ‘% @name %' 实现模糊查询,也可实现多个字段的查询。
数据库表:CREATE TABLE [dbo].[tq_xianhuo](
[supplyuint] [nvarchar](250) NULL,
[telephone] [nvarchar](50) NULL,
[name] [nvarchar](255) NULL,
[quality] [nvarchar](255) NULL,
[specific] [nvarchar](255) NULL,
[sum] [nvarchar](255) NULL,
[place] [nvarchar](255) NULL,
[factory] [nvarchar](255) NULL,
[data] [datetime] NULL,
[beizhu] [nvarchar](250) NULL,
[id] [int] NOT NULL,
[dp_id] [int] NULL,
CONSTRAINT [PK_tq_xianhuo] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
存储过程:
ALTER PROCEDURE dbo.xian_list
@supplyuint nvarchar(100),
@name nvarchar(50),
@quality nvarchar(50),
@specific nvarchar(50),
@place nvarchar(50),
@factory nvarchar(50)
AS
if @supplyuint is null
set @supplyuint=''
if @name is null
set @name=''
if @quality is null
set @quality=''
if @specific is null
set @specific=''
if @place is null
set @place=''
if @factory is null
set @factory=''
select * from tq_xianhuo
where
supplyuint like '%'+@supplyuint+'%' and
[name] like '%'+@name+'%' and
quality like '%'+@quality+'%' and
specific like '%'+@specific+'%' and
place like '%'+@place+'%' and
factory like '%'+@factory+'%'
RETURN
default.aspx 显示页面
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:tq_fenleiConnectionString %>"
SelectCommand="xian_list" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" ConvertEmptyStringToNull="False"
Name="supplyuint" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox2" ConvertEmptyStringToNull="False"
DefaultValue="" Name="name" PropertyName="Text" />
<asp:ControlParameter ControlID="TextBox3" ConvertEmptyStringToNull="False"
Name="quality" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox4" ConvertEmptyStringToNull="False"
Name="specific" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox5" ConvertEmptyStringToNull="False"
Name="place" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox6" ConvertEmptyStringToNull="False"
Name="factory" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="id" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="data" HeaderText="data" SortExpression="data" />
<asp:BoundField DataField="beizhu" HeaderText="beizhu"
SortExpression="beizhu" />
<asp:BoundField DataField="id" HeaderText="id" ReadOnly="True"
SortExpression="id" />
<asp:BoundField DataField="dp_id" HeaderText="dp_id" SortExpression="dp_id" />
</Columns>
</asp:GridView>
数据库表:CREATE TABLE [dbo].[tq_xianhuo](
[supplyuint] [nvarchar](250) NULL,
[telephone] [nvarchar](50) NULL,
[name] [nvarchar](255) NULL,
[quality] [nvarchar](255) NULL,
[specific] [nvarchar](255) NULL,
[sum] [nvarchar](255) NULL,
[place] [nvarchar](255) NULL,
[factory] [nvarchar](255) NULL,
[data] [datetime] NULL,
[beizhu] [nvarchar](250) NULL,
[id] [int] NOT NULL,
[dp_id] [int] NULL,
CONSTRAINT [PK_tq_xianhuo] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
存储过程:
ALTER PROCEDURE dbo.xian_list
@supplyuint nvarchar(100),
@name nvarchar(50),
@quality nvarchar(50),
@specific nvarchar(50),
@place nvarchar(50),
@factory nvarchar(50)
AS
if @supplyuint is null
set @supplyuint=''
if @name is null
set @name=''
if @quality is null
set @quality=''
if @specific is null
set @specific=''
if @place is null
set @place=''
if @factory is null
set @factory=''
select * from tq_xianhuo
where
supplyuint like '%'+@supplyuint+'%' and
[name] like '%'+@name+'%' and
quality like '%'+@quality+'%' and
specific like '%'+@specific+'%' and
place like '%'+@place+'%' and
factory like '%'+@factory+'%'
RETURN
default.aspx 显示页面
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:tq_fenleiConnectionString %>"
SelectCommand="xian_list" SelectCommandType="StoredProcedure">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" ConvertEmptyStringToNull="False"
Name="supplyuint" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox2" ConvertEmptyStringToNull="False"
DefaultValue="" Name="name" PropertyName="Text" />
<asp:ControlParameter ControlID="TextBox3" ConvertEmptyStringToNull="False"
Name="quality" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox4" ConvertEmptyStringToNull="False"
Name="specific" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox5" ConvertEmptyStringToNull="False"
Name="place" PropertyName="Text" Type="String" />
<asp:ControlParameter ControlID="TextBox6" ConvertEmptyStringToNull="False"
Name="factory" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="id" DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="data" HeaderText="data" SortExpression="data" />
<asp:BoundField DataField="beizhu" HeaderText="beizhu"
SortExpression="beizhu" />
<asp:BoundField DataField="id" HeaderText="id" ReadOnly="True"
SortExpression="id" />
<asp:BoundField DataField="dp_id" HeaderText="dp_id" SortExpression="dp_id" />
</Columns>
</asp:GridView>
相关文章推荐
- 将xml绑定到gridview,及xml节点查询的selectNodes怎么实现多条件查询
- 模块管理常规功能自定义系统的设计与实现(37--终级阶段 综合查询[4])
- lucene实现 某段时间内 多个存储字段 多关键字的查询 并且加入排序规则 思路
- gridview自定义绑定字段实现排序功能
- GridView 实现自定义分页、排序、查询、添加、编辑、多选删除
- Mongoose实现虚拟字段查询的方法详解
- sql简单实现查询某个表字段名,是否主键,是否非空及备注信息
- oracle wm_concat(column)函数实现查询相同id字段,内容以逗号分隔
- C#通过SQL语句查询结果分页不用GridView的实现
- 综合案例:jquery实现到达网点查询
- Hibernate(十七)Hibernate实现分页和综合查询详解
- oracle 实现多字段匹配一个关键字查询语句
- 强大DevExpress,Winform LookUpEdit 实现多列查询 gridview弹出下拉选择
- 将xml绑定到gridview,及xml节点查询的selectNodes怎么实现多条件查询
- jeecg中的查询实体CriteriaQuery的多字段排序的实现
- SQL查询分组后结果中某字段按照条件相加的实现
- PythonStock(6):使用 dataTable+python+Tornado 实现服务端多字段查询
- GridView 实现自定义分页、排序、查询、添加、编辑、多选删除、导出、突出显示等常见应用实现
- JavaEE_Mybatis_SpringMVC_Mybaits_lesson6__MyBatis传递pojo对象实现综合查询
- jquery autocomplete实现solr查询字段自动填充并执行查询