做了一个登录的窗体
用户登录点提交的时候 就去数据库检查有没有这个用户如果有的话就返回true
然后又去检查这个用户的是不是被禁用
再去查这个用户的到期时间
到了这里c#代码里面就写了三条sql语句了
SELECT * FROM table WHERE name='xxxx'
SELECT * FROM table WHERE disable=1 AND name='xxx'
SELECT * FROM table ........
能不能只写一条sql语句 就查询我所需要的数据 我再做客户端判断
MSSSql
执行第一条就行了SELECT * FROM table WHERE name='xxxx',取出需要判断的属性,不用select *,浪费资源
然后客户端假设你填充的是SqlDataReader
if(dr.Read()){
if(dr["disable"].ToString()=="1"){
//.....disable的操作
}
//其他判断
}
dr.Close();
SELECT * FROM table WHERE name='xxxx'
就这一条语句不是就把该用户信息全部查到了吗,返回一个表,如果是空就代表用户不存在,如果有大于0条数据,通过这个表
就可以拿到这个用户是否被禁用以及到期时间的字段了
写成存储过程,C#调用,而且存储过程是事务性的,而且存储过程效率高。