今天遇到一个神奇现象,目前正在写一个Demo,人事管理系统,首先肯定是初始化主页面,在初始化时,需要声明一个登陆窗体,但是当我在登陆窗体中填入登入名称和密码时直接就登陆成功了,但是发现我的statustrip中根本现实不了登陆名,此时再回去随便输入,我去,直接就跳到主界面了,奇了怪了。这个时候在登陆函数中设置断点,
SqlDataReader temDR = MyClass.getcom("select * from tb_Login where Name="+textName.Text.Trim()+"and Pass="+textPass.Text.Trim()+"");
这是我一开始的代码,咋一看,还真的没有发现问题,但是仔细一看,我去,瞎写,在"and Pass="这里,and前面没有空格,我以为发现了问题所在,但是呵呵//。。。。。
问题依然存在,然后我再仔细观察了一会,发现Name="就在这里,由于后面接的是一个textBox中Text,也就是字符串,但是我没有加单引号,很尴尬。。。
那么正确的形式应该是
SqlDataReader temDR = MyClass.getcom("select * from tb_Login where Name='"+textName.Text.Trim()+"'and Pass='"+textPass.Text.Trim()+"'");