1

我的标题可能不够清楚。所以让我解释一下这个问题。我必须从数据库中检索值将其存储在数组列表中并动态显示在 jsp 页面中。因为我正在使用查询

select customer, 
       id, 
       0 message 
  from TableName

我的表结构:

customer  varchar2(20)
id        Number

我不知道如何将该列添加0 message到结果集中,因为该表中不存在该列。

例如,如果我们给

select 0 message 
  from TableName;

上述查询的输出将是

message
0

所以现在我的问题是如何将此列(消息)添加到我的结果集和数组列表中?

4

4 回答 4

1

当您将它添加到您的问题中的 SQL 查询时,它也应该出现在结果集中......

于 2013-09-19T08:52:10.270 回答
0

只是想知道您是否在通过 JDBC 使用附加(DB 中不存在)列执行 SQL 查询时遇到任何问题。

例如: - 您可以通过 JDBC 直接在数据库中执行以下查询

select customer, 
   id, 
   0 "message"
from TableName 

示例代码片段。

Connection conn = DriverManager.getConnection(".....", "...","..");
ps = conn.prepareStatement("select customer, id, 0 \"message\" from your_table");
ResultSet rs = ps.executeQuery();
while(rs.next()){
    System.out.printf("%s %s %s", rs.getString("id"), rs.getString("customer"), rs.getString("message"));
}
于 2013-09-19T09:38:15.377 回答
0

这段代码适用于 sql server。对你想要的任何东西都做同样的事情。

public class ConnectionPool
{
public static void main(String[] args)
{
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection conn = DriverManager.getConnection("","","");
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("select sRowId,  0 messa  from tblAccount");
while(rs.next())
{
list.add(rs.getInt("messa"));
}
System.out.println(list.size());
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
于 2013-09-19T10:01:53.580 回答
0

Hlo .. 下面的代码会帮助你..

package com.smk.jdbc.ps;

import java.util.ArrayList;


public class PreparedStatement {

public static void main(String[] args) {
try{
Class.forName("oracle.jdbc.OracleDriver");

java.sql.Connection conn = null;
java.sql.PreparedStatement ps = null;
String strQry = "select 1 message  from dual where 1 = ?";

conn = java.sql.DriverManager.getConnection("jdbc:oracle:thin:@localhost:wzdev", "user","pwd");
ps = conn.prepareStatement(strQry);
ps.setInt(1, 1);

java.sql.ResultSet rs = ps.executeQuery();

while(rs.next()){
java.util.ArrayList<java.sql.ResultSet>  ars = new ArrayList<java.sql.ResultSet>();
ars.add(rs);    

System.out.println(ars.get(0).getInt("message"));
}



}catch(ClassNotFoundException e){
e.printStackTrace();
}catch(Exception e){
e.printStackTrace();
}
}

}
于 2013-09-19T08:58:18.983 回答