Skip site navigation (1) Skip section navigation (2)

Re: jtree and sql queries

From: Roland Walter <roland(dot)walter(dot)rwa(at)gmx(dot)net>
To: Luca Ferrari <fluca1978(at)infinito(dot)it>
Cc: pgsql-jdbc(at)postgresql(dot)org
Subject: Re: jtree and sql queries
Date: 2006-11-03 23:30:04
Message-ID: (view raw, whole thread or download thread mbox)
Lists: pgsql-jdbc
Luca Ferrari schrieb:
> Hi all,
> I'm just wondering if someone has already bound a JTree to a set of sql 
> queries. I explain it better: I've got  a person table, a skill table and a 
> role table. Each person can play one or more role, and can have one or more 
> skill. I'd like to show to the user the result of the query as a tree:
> person
> +- roles
>    +- role1
>     +- role2
>  +skills
>     +- skill1
>     +- skill2
> ....
> As you can imagine, the difficult is to bind each node tree to its table and 
> to a specific query. For now I've bound each node to its table and its key 
> value (with bound I mean that from the node I can know which table and key I 
> must use to find the row in the database), but my difficult now is to refresh 
> the tree each time the user makes a changes to the database. Unlike the use 
> of simple tables, building the tree is more complex, because more queries 
> must be performed, so I was wondering if someone out there has already 
> something similar and can suggest me.
> Thanks,
> Luca

I had once similiar problem. I used one statement with left outer joins
that queried all tables connected with the nodes. The values of the row
were inserted into the tree. First checked if the first value exists on
his level, if it did not I created a new node, elsewhile I checked all
subnodes of that node for the second value. The algorithm was recursive.
If the database changed I built the whole tree again. Not very
performant but was sufficient for results with about a few thousand rows.

I would only build the tree once with one query. All changes of the user
on the tree might create insert or update statements but the tree would
not be build again but only modified according to the changes. But this
works only if there are no concurrent changes on the tables. You should
consider putting the modification into a transaction then.


In response to

pgsql-jdbc by date

Next:From: William HarrisDate: 2006-11-04 21:07:36
Subject: using a SSL connection via WebStart
Previous:From: Luca FerrariDate: 2006-11-03 17:19:04
Subject: jtree and sql queries

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group