Solved

Get DB2 tablespace during runtime

Posted on 2003-11-21
5
810 Views
Last Modified: 2011-10-03
Dear all,

Is there any method to know the DB2 tablespace during runtime? I am using Java application and SQLJ to access IBM DB2 V7.  My table is partitioned and I want my program to know if one partition is full, it can insert record to the next partition.  Does SQLJ provide any function to do so?

Thanks all.

0
Comment
Question by:helloyip
  • 2
  • 2
5 Comments
 
LVL 2

Expert Comment

by:askanivg
Comment Utility
try using db2 list tablespaces. I dont know about SQLJ.

Basically paritioning key if defined, (feature of V8) distributes the load across various nodes. So it does not mean that the first tablespace is filled and it starts filling up the different nodes/tablespaces. If you wish to do it manually then you can think doing on these lines. ie.. checking the range of the partitioning key and inserting into the respective node/tablespace that houses that range of partitioning key values. This would help your performance also.

HtH
0
 

Author Comment

by:helloyip
Comment Utility
Thanks for your reply.  However, what I am seeking is the way to know the tablespace utilization at runtime using Java, so that I can avoid inserting record to the partition which is already or nearly out of disk space.  

Any other suggestion?


0
 
LVL 2

Expert Comment

by:askanivg
Comment Utility
I suppose you cannot do this manually. It should be done by the database.
Or
if you wish to do it manually you should have access to use 'list tablespaces show detail'. Then looking at the upper water level mark you should decide whether the tablespace is filled. Then use some commands like use node1, export node1 and then load to that node.
0
 
LVL 18

Expert Comment

by:BigSchmuh
Comment Utility
Did you try using SYSCAT.TABLESPACES catalog table to retrieve those informations ?
0
 
LVL 18

Accepted Solution

by:
BigSchmuh earned 500 total points
Comment Utility
I apologize for my last post as SYSCAT.TABLESPACES will definitely not do the job.

But there is a way to do it using C (or C++) to build a stored procedure which you can call from SQLJ.

First, I will show you what the Administration API can do for you. Please find below the API to a C example of reading tablespaces informations (Free, Used, High watermark...)
    http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb.doc/ad/samples/c/s-tsinfo-sqc.htm
and a link to the first API to use to read tbs info
    http://publib.boulder.ibm.com/infocenter/db2help/topic/com.ibm.db2.udb.doc/admin/r0001596.htm

Second, I will be pleased to show you how to build those those stored procedures if you want me to.
Third, I may although show you how to use those stored procedures from SQLJ but you probably know more than me about it.

Hope this helps.
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Suggested Solutions

November 2009 Recently, a question came up in the DB2 forum regarding the date format in DB2 UDB for AS/400.  Apparently in UDB LUW (Linux/Unix/Windows), the date format is a system-wide setting, and is not controlled at the session level.  I'm n…
Recursive SQL in UDB/LUW (you can use 'recursive' and 'SQL' in the same sentence) A growing number of database queries lend themselves to recursive solutions.  It's not always easy to spot when recursion is called for, especially for people una…
It is a freely distributed piece of software for such tasks as photo retouching, image composition and image authoring. It works on many operating systems, in many languages.
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now