惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 司徒正美
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
G
Google Developers Blog
T
Threat Research - Cisco Blogs
Cyberwarzone
Cyberwarzone
罗磊的独立博客
S
Security Affairs
D
Docker
Microsoft Azure Blog
Microsoft Azure Blog
G
GRAHAM CLULEY
W
WeLiveSecurity
博客园 - Franky
C
Check Point Blog
The Last Watchdog
The Last Watchdog
F
Full Disclosure
Security Latest
Security Latest
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
AWS News Blog
AWS News Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog
T
Troy Hunt's Blog
S
Secure Thoughts
Security Archives - TechRepublic
Security Archives - TechRepublic
P
Privacy & Cybersecurity Law Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
P
Privacy International News Feed
S
Schneier on Security
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tenable Blog
aimingoo的专栏
aimingoo的专栏
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Recent Announcements
Recent Announcements
IT之家
IT之家
D
DataBreaches.Net
U
Unit 42
博客园 - 聂微东
H
Hacker News: Front Page
GbyAI
GbyAI
T
The Exploit Database - CXSecurity.com
N
News and Events Feed by Topic
Simon Willison's Weblog
Simon Willison's Weblog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
TaoSecurity Blog
TaoSecurity Blog
Google Online Security Blog
Google Online Security Blog
T
Threatpost
博客园 - 叶小钗
V
V2EX
Hugging Face - Blog
Hugging Face - Blog
K
Kaspersky official blog

博客园 - 王继坤

DataTable 递归 简单的程序,来实现无限级列表 结合 jquery.table.js 实现 asp.net mvc 2 简简单单做开发 使用DataContext扩展方法Find<TEntity>(TEntity obj) 遇到的问题 asp.net mvc 2 简简单单做开发 实现基本数据操作操作RepositoryController<T> asp.net mvc 2 简简单单做开发 自定义Controller基类 - 王继坤 asp.net mvc 2 简简单单做开发 自定义DropdownList控件 asp.net mvc 2 简简单单做开发 通用增删改基本操作通用页面 asp.net mvc 2 DisplayTemplates 的使用 FcDigg 源码 asp.net 3.5 linq to sql 扩展方法 linq to access 简单实现 实例demo linq to access 简单实现 asp.net mvc 随想 asp.net mvc ajax实现1 asp.net ajax fccms 小型简单个人blog源码 FCKEDITOR中文使用说明 js调用 dotfuscator.exe 采用线程生成静态页面 新的开始---
gridview 实现多字段综合查询
王继坤 · 2008-05-22 · via 博客园 - 王继坤

   最近写一个模糊综合多个字段的数据表查询,又要保持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>