WHERE (@aa不能这样写,请大家帮我修正一下,谢了

gxnnyzr 2010-02-04 03:16:02
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:gxsbdConnectionString %>"

SelectCommand="SELECT * FROM [aa] WHERE (@aa LIKE '%' + @bb + '%')">
<SelectParameters>
<asp:ControlParameter ControlID="TextBox1" Name="aa" PropertyName="Text"
Type="String" DefaultValue="bb" />
<asp:ControlParameter ControlID="TextBox2" Name="bb" PropertyName="Text"
Type="String" DefaultValue="%" />
</SelectParameters>
</asp:SqlDataSource>

WHERE (@aa不能这样写,请大家帮我修正一下,谢了
...全文
261 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
yan267 2010-02-25
  • 打赏
  • 举报
回复

declare @aa nvarchar(200)
declare @bb nvarchar(200)
declare @SQL Nvarchar(2000)
set @aa='order_no'
set @bb='%PO2010020505A%'

set @SQL='Select order_no from tb_order_apao where 1=1'+' and '+@aa+' like N'''+@bb+''' '

print(@SQL)



把%%加到参数当传值。
gxnnyzr 2010-02-25
  • 打赏
  • 举报
回复
楼上的我第一次就是这样操作的,肯定是不行了
yan267 2010-02-25
  • 打赏
  • 举报
回复
 where '+@aa+' like N'%'+@bb+'%'
gxnnyzr 2010-02-25
  • 打赏
  • 举报
回复
我的不是存储过程,是在asp.net 前台
  • 打赏
  • 举报
回复
在存储过程里面是这样写的
@str = 'select * from point where '+@aa+' like ''%'+@bb+'%'''
然后你看着改
criedshy 2010-02-23
  • 打赏
  • 举报
回复
@aa是个字段名吗?跟踪一下代码
likevs 2010-02-23
  • 打赏
  • 举报
回复
关键就出在LIKE '%'这些标点符号上,请楼主自己不断地更换,试到OK为止
gxnnyzr 2010-02-23
  • 打赏
  • 举报
回复
楼上的,是什么意思呀,能写出代码吗
「已注销」 2010-02-23
  • 打赏
  • 举报
回复
连接字符串啊用+号吧。。你这又不是存储过程
  • 打赏
  • 举报
回复
参数那里来的啊 @aa @bb 有这个就不能这样直接写了 必须先用字符串拼接 然后赋给SelectedCommand
gxnnyzr 2010-02-23
  • 打赏
  • 举报
回复
这段时间父亲病了,一直忙父亲的事

SelectCommand="Exec('SELECT * FROM [aa] WHERE ('+@aa+' LIKE '''%''' + '+@bb+' + '''%''')')"

这样不得呀
gxnnyzr 2010-02-23
  • 打赏
  • 举报
回复
@aa不是一下字段名,是一个变量
polarissky 2010-02-04
  • 打赏
  • 举报
回复
顶3楼说的。
给楼主贴个我毕业设计的代码:

<asp:SqlDataSource id="SqlDataSource2" runat="server" SelectCommand="SELECT [编号], [文件名], [上传时间], [类别] FROM [图像信息] WHERE ([类别] = @类别) AND ([关键字] like '%'+@关键字+'%')" ConnectionString="<%$ ConnectionStrings:LocalSqlServer %>">
<SelectParameters>
<asp:ControlParameter ControlID="DropDownList1" Name="类别" PropertyName="SelectedValue" Type="String" />
<asp:ControlParameter ControlID="txtKeyWord" Name="关键字" PropertyName="Text" Type="String" />
</SelectParameters>
</asp:SqlDataSource>

关键字是我图像信息表的字段
vip__888 2010-02-04
  • 打赏
  • 举报
回复
[]关键字加上
criedshy 2010-02-04
  • 打赏
  • 举报
回复
SelectCommand="Exec('SELECT * FROM [aa] WHERE ('+@aa+' LIKE '''%''' + '+@bb+' + '''%''')')"
criedshy 2010-02-04
  • 打赏
  • 举报
回复
SelectCommand="Exec('SELECT * FROM [aa] WHERE ('+@aa+' LIKE '''%''' + '+@bb+' + '''%'''')"
gdjlc 2010-02-04
  • 打赏
  • 举报
回复
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString=" <%$ ConnectionStrings:gxsbdConnectionString %>"

SelectCommand="SELECT * FROM [aa] WHERE ([字段名] LIKE '%' + @aa + '%')">
<SelectParameters>
<asp:QueryStringParameter Name="aa" DefaultValue="bb" QueryStringField="aa" Type="String" />
</SelectParameters>
</asp:SqlDataSource>


后台:


protected void Button1_Click(object sender, EventArgs e)
{
//点击按钮查询,test.aspx为当前页面
Response.Redirect("test.aspx?aa=" + TextBox1.Text.Trim());
}
jenny0810 2010-02-04
  • 打赏
  • 举报
回复
SelectCommand="SELECT * FROM [aa] WHERE ("+@aa+" LIKE '%" + @bb + "%')"
这样试试
gdjlc 2010-02-04
  • 打赏
  • 举报
回复
http://www.cnblogs.com/pomp/archive/2008/12/04/1347729.html

SqlDataSource查询设置

以前一直没SqlDataSource控件做过模糊查询的应用,今天想实现时,竟然SELECT * FROM 表 WHERE 字段 LIKE '%@参数%' 的形式不能用,在网上查好久找出答案,现记录下,也避免大家再出同样的问题。
用SqlDataSource控件进行精确查询和模糊查询时的SelectCommand设置如下形式:
select * from friend WHERE (frdName=@frdName or frdName LIKE '%'+@frdName+'%')
加载更多回复(2)

62,254

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧