读书人

SQL语句-这样查询能能实现吗?该怎么处

发布时间: 2012-04-01 17:23:46 作者: rapoo

SQL语句--这样查询能能实现吗?
select * from customer where userid='小强'
---------------------------------------------------
以上的语句是取出小强的客户信息
如果是管理员登陆他要取出所有的客户信息,在SQL语句不变,只改变userid值的情况下能实现吗?也就是说有没有一个通配符
类似select * from customer where userid='?'
就能查出所有的客户。

不知道有没有说明白~~


[解决办法]
貌似没有这种写法 不过 你这种要求 可以考虑SQL 注入的东东 把select * from customer where userid='?'
构造成 select * from customer where userid='1' or 1=1 --';
传入的部分为 " 1' or 1=1 --" 这样弄可以不改变你的 SQL语句 ,但是存入SQL 注入的漏洞。

最好还是 加一个判断 然后用 select * from customer 查询
[解决办法]
管理登的取所有的客信息:
在串SQL把where件去掉,或者 改 where userid is not null
[解决办法]
用 where userid like

[解决办法]
你应该是用存储过程来实现的吧

那为什么不在存储过程里面判断一下哦??
如果@userid=0 则查询所有
反之按条件查询

[解决办法]
写一个存储过程就行,如果userid 不输入去所有
如果输入小强,久按条件

SQL code
create procedure GetcustomerByuserid@userid varchar(50) =nullasselect  *  from  customer  where userid=@userid or @userid is null 

读书人网 >asp.net

热点推荐