首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java如何通过输入,传递参数去访问数据库

2012-02-04 
java怎么通过输入,传递参数去访问数据库那个java怎么通过输入,传递参数去访问数据库,然后搜出相应条件的元

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框架。


[解决办法]

探讨

String command = "select * from book where bno=" + xx;

[解决办法]
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结果集,再从结果集里去数据,建议不用"*",只查询你需要的字段。
[解决办法]
探讨

动态的拼接SQL,参数用"?"代替,可以PrepareStatement里面的方法给"?"赋值,得到的ResultSet结果集,再从结果集里去数据,建议不用"*",只查询你需要的字段。

[解决办法]
可以结贴了

热点排行