问题描述
在不确定级联层数时,怎样进行级联查询,如:A{id,name,bid},b{id,name,cid},c{id,name,did}......以A表为基础,级联查询所有name,注意:不确定级联层数。
解决方案
本帖最后由 czp896019976 于 2011-04-17 16:55:30 编辑
解决方案二:
我用的数据库是mssqlserver
解决方案三:
没人会吗?
解决方案四:
不会/...........
解决方案五:
用多表连接查询
解决方案六:
不确定级联层数,估计就只好拼接sql语句了--
解决方案七:
该回复于2011-04-18 09:21:54被版主删除
解决方案八:
用hibernate框架实现xml配置级联吧配置cascade属性
解决方案九:
刚学的ORacle,不确定级联的还不会,帮顶吧~
解决方案十:
哎问题不怎么懂啊!Hibernate可以实现表间的级联查询,比较方便,但性能较JDBC差些!
解决方案十一:
直接用多表查询吧
解决方案十二:
你的级联层数都无法确定?查询数据库用户表信息筛选需要级联的表名
解决方案十三:
说明主键和外键,然后级联查询。
解决方案十四:
用hibernate的级联查询,再加上延迟加载,估计会不错
解决方案十五:
实际开发中这种设计不太好吧...
解决方案:
用Hibernate的延迟加载、如果在集成了Spring框架的话、在你需要查询的下一级set节点中设置lazy="false"如:已表A为基础要查询表B的数据、只需要在表A中Hibernate生成的javaBean属性文件A.hbm.xml找到表B的set节点或者其它节点(根据表间关系)<!--这是我的项目配置--><setname="tbmeetfiles"inverse="true"lazy="false"><key><columnname="MEETID"precision="22"scale="0"><comment>外键,和会议管理主键ID对应</comment></column></key><one-to-manyclass="com.boxun.crm.dao.entities.Tbmeetfile"/></set>
解决方案:
A{id,name,bid},b{id,name,cid},c{id,name,did}......不知道你为什么这样设计表,直接A{id,name,bid}不就可以呢?为什么还要多出那么多的表查询时SQL的递归查询就OK!
解决方案:
楼主在CSDN搜索下BOOM节点问题!很多的例子!
解决方案:
用hibernate这种只要配置好了对应关系,只要查处A实体,就可以用A来点出来下面所有面的对象实体,不管是多少层。
解决方案:
蛋疼的问题。自己写sql
解决方案:
该回复于2011-04-18 15:33:09被版主删除
解决方案:
引用18楼miaomiao_j的回复:
用hibernate这种只要配置好了对应关系,只要查处A实体,就可以用A来点出来下面所有面的对象实体,不管是多少层。
+1
解决方案:
http://blog.csdn.net/sgear/archive/2011/04/11/6315543.aspx
解决方案:
不确定级联层数建议拼装SQL。。。
解决方案:
该回复于2011-04-19 15:05:22被版主删除
解决方案:
谢谢,等待解决方法,不方便用hibernate,不知道递归咋用,mssqlserver数据库,等待。。。。。
解决方案:
用循环语句while就行了定义id和topid(上一级id)while((id<>N'000000000000)or(idisnotnull))beginselectid=tab_id,topid=tab_topidformtabwhereid=tab_idend
解决方案:
像这种最好别用级联,通过外键关联
解决方案:
该回复于2011-04-22 14:13:32被版主删除
解决方案:
什么情况下回出现不确定级联次数的么
解决方案:
引用16楼acherat的回复:
A{id,name,bid},b{id,name,cid},c{id,name,did}......不知道你为什么这样设计表,直接A{id,name,bid}不就可以呢?为什么还要多出那么多的表查询时SQL的递归查询就OK!
感觉这种说法正确,不太明白楼主的意思,递归应该可以解决吧,只要把表设计好就OK了
解决方案:
该回复于2011-05-09 13:25:17被版主删除