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: 454BD0FC.1070507@gmx.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
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.

Regards,
Roland.

In response to

Browse pgsql-jdbc by date

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