为啥Oracle只能查询出一条记录?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥Oracle只能查询出一条记录?相关的知识,希望对你有一定的参考价值。
package 测试包;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class Oracle
/**
* @param args
*/
public static void main(String[] args)
// TODO Auto-generated method stub
Connection conn = null;
PreparedStatement statement =null;
Statement stmt = null;
ResultSet res=null;
try
Class.forName("oracle.jdbc.driver.OracleDriver");
catch (ClassNotFoundException e)
// TODO Auto-generated catch block
e.printStackTrace();
String url="jdbc:oracle:thin:@127.0.0.1:1521:Oraclename";
//orcl为数据库的SID
String user="system";
String password="tiger";
try
conn= DriverManager.getConnection(url,user,password);
System.out.println("已经成功连接数据库!!!");
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
// statement = conn.prepareStatement("select * from newtable1");
res=stmt.executeQuery("select * from newtable1");
// res = statement.executeQuery();
while(res.next())
System.out.println(res.getString(1)+" "+res.getString(2)+res.getString(3));
conn.close();//关闭连接数据库
catch (SQLException e)
// TODO Auto-generated catch block
e.printStackTrace();
//statement.executeQuery("select * from newtable1");
连接成功,不过只能显示出一条数据记录:
已经成功连接数据库!!!
第一名 张三 一班
如果是多条数据..建议你创建一个entity实体类..然后循环将数据插入到一个 实体类类型的list中 返回一个list 如果你要在控制台看到 数据 就在 循环中输出就可以了.
新手..希望对你有帮助 参考技术A 原因:你的表只有一行。。。 参考技术B newtable1 里面有几行?
oracle 查询 将一条变多条
表里有这样一条记录
山东 0.8 全部 7
---------------------------------------------- 怎么变成下面
山东 0.8 全部 7
山东 0.8 全部 7
山东 0.8 全部 7
山东 0.8 全部 7
山东 0.8 全部 7
山东 0.8 全部 7
山东 0.8 全部 7
---------------------------------------------------
下面7条记录都是根据第一条的那个7循环的。也就是说7那个字段不管整数是多少,下面就会有多少记录。
如果是8下面就会有八条记录。是9就会有9条记录。 我是做查询不是想做新增。就是想把本来是一条结果集的记录,查询一下变成多条。
也可以用分析函数。
如果是重复数据的话用 distinct 就可以了。追问
能不能给我一个示列看一下
参考技术B select '山东',0.8,'全部',7 from dual;union all
select '山东',0.8,'全部',7 from dual;
union all
select '山东',0.8,'全部',7 from dual;
union all
select '山东',0.8,'全部',7 from dual;
union all
select '山东',0.8,'全部',7 from dual;
union all
select '山东',0.8,'全部',7 from dual;
union all
select '山东',0.8,'全部',7 from dual;
这样写试一下,看看是否好用。 参考技术C 用union all 呗
select * From table1
union all
select * From table1
union all
select * From table1
.......
不知道符合不符合你的要求追问
但是结果集想变成多少条记录是根据字段里面的值来确定的,值是多少条,结果集就多少条
追答那么既然是循环,就得有判断,既然有判断就得写代码,单用sql应该是实现不了的
追问能不能写成一个视图,我在前面弄也挺麻烦
追答视图肯定不行啊,视图其实就是sql语句,也是死的
本回答被提问者和网友采纳 参考技术D 写程序吧,单条SQL应该做不出这个效果追问能不能写个视图或者其他什么。可以做吗
第5个回答 2014-09-11 这是一个变态的需求,一条SQl语句做不到以上是关于为啥Oracle只能查询出一条记录?的主要内容,如果未能解决你的问题,请参考以下文章