string sql="SELECT ID, 姓名, 性别, 学号, 密码, 联系方式, 身份证号, 出生日期 FROM student WHERE (学号 =@xx);SqlCommand cmd=new SqlCommand(cmd,Conn);
SqlParameter p=new SqlParameter("@xx",SqlDataType.Varchar);
p.Value=textBox1.Text;
cmd.Parameters.Add(p);cmd.ExecuteReader();
SqlParameter p=new SqlParameter("@xx",SqlDataType.Varchar);
p.Value=textBox1.Text;
cmd.Parameters.Add(p);cmd.ExecuteReader();
J#里自带了一个查询编辑器,是图形化的,它会自动添加代码...只是WHERE后的要自己加进去我WHERE (学号 = '11')就可以找到学号为11的学生
但是WHERE (学号 = '"+textBox1.get_Text()+"')等返回的都是NULL,而我textBox1里已经输入了11
get_Text()这个东西我怎么没见过。自己写的吗
import java.sql.sqlClient;试试
SELECT ID, 姓名, 性别, 学号, 密码, 联系方式, 身份证号, 出生日期
FROM student
WHERE 学号 = '"+this.textBox1.get_Text()+"'";
不过这样容易被注入,还是加参数的比较安全!
改成WHERE (学号='"+textBox1.get_Text()+"')就不行了,我估计这里把"+textBox1.get_Text()+"整个当成一个字符串来判断了,也就是它根本没有去读取Form1.textBox1里的内容~~