java怎么通过输入,传递参数去访问数据库
那个java怎么通过输入,传递参数去访问数据库,然后搜出相应条件的元组啊?
直接赋值给变量xx.,然后用SQL语句String command = "select * from book where bno=xx";不行的么??
[解决办法]
xx被认为是字符串常量了!!!
[解决办法]
String command = "select * from book where bno=" + xx;
[解决办法]
最好用PrepareStatement
[解决办法]
引号里面,他把xx当作字符串了。
你可以用二楼的方法拼接SQL语句。
但是拼接SQL语句是比较麻烦的。
你可以选择用PrepareStatement。
如果PrepareStatment.你都嫌麻烦的话。
可以学一下Hibernate框架。
[解决办法]
[解决办法]
- Java code
import java.sql.*;public class Main { public static void main(String[] args) throws Exception{ Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1/test?user=root&password=jiakai"); String sql = "select * from book where id = ?"; PreparedStatement ps = conn.prepareStatement(sql); ps.setInt(1, 5); ResultSet rs = ps.executeQuery(); while (rs.next()) { int id = rs.getInt("id"); String name = rs.getString("name"); System.out.println("id: "+id+" name: "+name); } }}
[解决办法]
动态的拼接SQL,参数用"?"代替,可以PrepareStatement里面的方法给"?"赋值,得到的ResultSet结果集,再从结果集里去数据,建议不用"*",只查询你需要的字段。
[解决办法]
[解决办法]
可以结贴了