C#程序中SQL语句作为函数参数形式问题

  今天遇到一个神奇现象,目前正在写一个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()+"'");

posted @ 2017-09-13 16:58  小小范同学  阅读(424)  评论(0编辑  收藏  举报