若要使jsp界面上某一行显示的数据是从数据库里的两个表里拼凑起来的,怎样表示呢
若要使jsp界面上某一行显示的数据是从数据库里的两个表里拼凑起来的,怎样表示呢,比如借书时,一行显示很多信息,这些信息来自两个表,一次借好几本书,这些借书信息怎么让他显示...
若要使jsp界面上某一行显示的数据是从数据库里的两个表里拼凑起来的,怎样表示呢,比如借书时,一行显示很多信息,这些信息来自两个表,一次借好几本书,这些借书信息怎么让他显示出来呢,提前先谢谢指点啦。我用的是jsp+mysql+tomcat
展开
3个回答
展开全部
首先你要明确,你要显示的其实并不是数据库表中的直接内容,不管使用什么方式访问数据库,最终的结果都是生成一个类似于临时表的结果集,所以你的页面实际上要打印的是结果集中的内容,而结果集怎么排列和拼凑是由你自己控制的,类似于平时做连接表查询一样,查询结果是一个唯一的表,所以不存在拼凑的问题
若是还不明白怎么操作可以继续问我
若是还不明白怎么操作可以继续问我
更多追问追答
追问
谢谢你,我是初学者,很多地方不懂,你让我明白了结果集是怎么回事,可是怎么把两个表里的数据放到结果集里我还是不知道怎么弄
追答
有些东西太简单反而不好说,比如说select * from tbl1,tbl2 where tbl1.id = tbl2.id
这个语句的执行内容就是连接表查询,将两个表里符合条件的行筛选出来,那执行结果呢?
执行结果就是一个表,我们可以称它为tbl3,这个表实际上是不存在的,那tbl3中的每一行都是一个结果,很多行在一起就形成了一个结果集,也就是说tbl3本身就是结果集
所以不存在什么把数据放到结果集里的事,你执行完了,得到的就是结果集,所以怎么放到一起是由你所执行的sql语句决定的,而不是执行完之后进行什么操作
我把代码给你贴一下把,jdbc的
String sql="select * from tbl1,tbl2 where tbl1.id = tbl2.id";
ResultSet rs = statement.executeQuery(sql); //这句意思就是执行sql生成resultset,就是结果集
while(rs.next()){//当结果集有下一个,即当前不是最后一个,当然也不为空
rs.getString('id');//获取结果集中名称为id的列
rs.getString(1);//获取结果集中的第一列
//取到值之后你就可以做任何你想做的事了
}
就这样,不明白继续问我
展开全部
数据库可以用连表查,如果jsp访问数据库的话,可以先存入变量,再显示出来。详细问题可以把源码贴出来
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我也正在纠结这问题,应该和你差不多,我想用的是迭代标签把两个无关联的表里的数据整合到一个jsp视图上
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询