java如何将数据库中某一个int类型字段的值以数组的形式提取出来
java如何将数据库中某一个int类型字段的值以数组的形式提取出来求代码,比如将以会员的ID提取会员买过的商品的所有id,并将提取出来的数据写入一个数组中...
java如何将数据库中某一个int类型字段的值以数组的形式提取出来 求代码,比如将以会员的ID提取会员买过的商品的所有id,并将提取出来的数据写入一个数组中
展开
4个回答
展开全部
import java.sql.*;
import java.util.Vector;
public class Test {
public static void main(String[] args) {
String strQuery = "SELECT * FROM rkd";
int[] id = getID(strQuery);
//输出测试id数组
for(int e : id){
System.out.println(e);
}
}
/**
* 根据查询串获得编号数组
* @param strQuery 查询串
* @return 编号数组
*/
public static int[] getID(String strQuery) {
int[] id = null;
try {
//查询数据库中的会员id
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Exam01","sa","123456");
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(strQuery);
//将所有id存入临时变量vect中
Vector<Integer> vect = new Vector<Integer>();
while(rs.next()){
vect.add(rs.getInt(1));
}
//将所有id转存到数组中
id = new int[vect.size()];
for(int i=0; i<id.length; i++){
id[i] = Integer.parseInt(vect.get(i).toString());
}
}
catch (Exception e) {
e.printStackTrace();
}
return id;
}
}
import java.util.Vector;
public class Test {
public static void main(String[] args) {
String strQuery = "SELECT * FROM rkd";
int[] id = getID(strQuery);
//输出测试id数组
for(int e : id){
System.out.println(e);
}
}
/**
* 根据查询串获得编号数组
* @param strQuery 查询串
* @return 编号数组
*/
public static int[] getID(String strQuery) {
int[] id = null;
try {
//查询数据库中的会员id
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=Exam01","sa","123456");
Statement stat = conn.createStatement();
ResultSet rs = stat.executeQuery(strQuery);
//将所有id存入临时变量vect中
Vector<Integer> vect = new Vector<Integer>();
while(rs.next()){
vect.add(rs.getInt(1));
}
//将所有id转存到数组中
id = new int[vect.size()];
for(int i=0; i<id.length; i++){
id[i] = Integer.parseInt(vect.get(i).toString());
}
}
catch (Exception e) {
e.printStackTrace();
}
return id;
}
}
展开全部
// 连接数据库:
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Products"; // sql server数据库的URL地址(oracle的不一样)
String userName = "sa"; // 用户名
String userPwd = "123"; // 密码
Connection dbConn = null;
PreparedStatement psmt = null;
ResultSet rs = null;
try {
Class.forName(driverName);// 加载JDBC驱动
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
String sql = "select pro.product_id from Products pro where pro.customer_id = ?"
String customerId = "0001"; //假设客户id是string类型的
psmt = dbConn.prepareStatement(sql);//预编译sql语句
psmt.setString(1, customerId); // 给第一个问号赋值
rs = psmt.executeQuery() ;
String[] productIds = (String[]) rs.getArray(“product_id”).getArray(); //将查询出来的产品id放入数组之中,假设产品id都是string类型的
} finnally {
if (rs != null) {
rs.close();
}
if(psmt != null) {
psmt.close();
}
if(dbConn!= null) {
dbConn .close();
}
}
String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Products"; // sql server数据库的URL地址(oracle的不一样)
String userName = "sa"; // 用户名
String userPwd = "123"; // 密码
Connection dbConn = null;
PreparedStatement psmt = null;
ResultSet rs = null;
try {
Class.forName(driverName);// 加载JDBC驱动
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
String sql = "select pro.product_id from Products pro where pro.customer_id = ?"
String customerId = "0001"; //假设客户id是string类型的
psmt = dbConn.prepareStatement(sql);//预编译sql语句
psmt.setString(1, customerId); // 给第一个问号赋值
rs = psmt.executeQuery() ;
String[] productIds = (String[]) rs.getArray(“product_id”).getArray(); //将查询出来的产品id放入数组之中,假设产品id都是string类型的
} finnally {
if (rs != null) {
rs.close();
}
if(psmt != null) {
psmt.close();
}
if(dbConn!= null) {
dbConn .close();
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想,会员信息表中的ID一定是主键,商品表中一定有与会员表中成关联的外键ID,即,那个会员买过什么商品。你只要查询商品表中的ID,以会员表ID=商品表中会员ID作为条件,就可以得到一个会员所买的商品ID了。这个ID肯定是个数组,你通过jdbc取出ID之后,再把它们添加进一个集合里面就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没学过jdbc和sql????
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询