java连mssql问题

来源:百度知道 编辑:UC知道 时间:2024/05/28 17:58:51
String Name = "张三";
String sql = "select * from Employee where name="+Name;
ResultSet rs = statement.executeQuery(sql);

为什么会说列名无效?

怎么样才能在SQL语句中用变量
难道只能用PreparedStatement?
这个好象不能在ResultSet中使用

遇到类似问题直接把语句复制到命令行运行下就看到哪儿错了...

张三要加引号的

String sql = "select * from Employee where name='"+Name+"'";试下

sql语句,拼字符串错误。
String sql = "select * from Employee where name='"+Name+"'";

String Name = "张三";
Connection con;
PreparedStatement pstmt=con.prepareStatement("select * from Employee where name=?");
pstmt.setString(1,Name);/如果这个不行的话 ,就把Name放到一个类 里,然后getName一下就行了。例如:pstmt.setString(1,类名的初始化.getName());
ResultSet rs = pstmt.executeQuery();
if(rs.next()!=null){
//输出所要结果。
}

这样就OK了