Readme for INFOTABLE May 2, 2014 Changes to this version Code upgraded to be compiled against gcc and against 12.x Credit to Art Kagel How to compile ------------- esql -o infotable infotable.ec You may find DOS ^M at the end of the line. Remove that before compiling. what this tool does ------------------- This tool is some sort of equivalent command of Oracle's describe command , but gives more information than describe. output of this table -------------------- The output of this table is divided into two sections:- Top Section Bottom Section. Top section gives the output in 4 columns:- .......................................... Column 1 :- name of the table column Column 1 will be restricted to only 41 chars long. Any table column with a longer name will be shown with a trailing $ sign. Column 2 :- Type of the table column along with its length. Column 3 :- Whether null of not null Column 4 :- Whether the column is indexed, or is a primary/foreign key. Here the field will be marked as indexed, if it is indexed on its own or is part of a composite index. PKY - Primary Key FKY - Foreign Key UNQ - Unique index ID - Duplicate index CLS - Cluster Index For a proper understanding of the indices, look at the bottom section of the report. Bottom Section of the output gives index information display:- .............................................................. Primary Key: Lists the field(s) which constitutes the primary key Prieign Key: Lists the field(s) which refer other tables along with the name of the table it refers. Unique Index: Lists the field(s) which make up a unique index. Index: Lists the fields(s) which make up a duplicate index. Cluster Index: Lists the field(s) which make up a Cluster index. Other tables which refer this table: Lists all other tables which refer this table. Checks on this table: displays each check constraint of the table. In case of ANSI database it prefixes table name with the owner name. usage: infotable -d -t|T [-h][-v][-m][-i] -d name of the database use database_name@server_name to connect to remote server create a password file and set env variable INFOTPASS to point out to this file. -t name of the table use owner.table for owner specific table -T for all tables -S for all tables including system tables -m mail the report to the email address mentioned -i index information only -v version of this tool -h help screen Password file ------------- This file will contain the entries for connection to remote server. It is not mandatory to create this file. On a trusted environment, this file can be ignored. the entried in the file will be:- database_name@server_name|user_name|password One line for each password entry. For security reason, set the permission on this file to 600. SERVERS SUPPORTED ----------------- This tool was developed using ESQL/C ver 7.23 and tested on IDS ver 7.23 and 7.30. This tool is backward compatible with Online 5.0. It should also work with Standard Engine ver 5.0 and above (though it has not been tested). Version 2.1 tested against IDS 9.21. Version 2.2 tested against ver 5.x without I-STAR/I-CONNECT. Improvements in Version 2.0 --------------------------- 1. Code supports ANSI-C. 2. A new option -t alltables is supported. When this option is used the tool will print info for all tables in the database. Improvements in Version 2.1 --------------------------- 1. Bug fixed in case of B Tree Index in ver 9.21. Improvement in Version 2.2 -------------------------- 1. owner name can be specified in -t option as owner.table. 2. -u and -p option to connect to remote server has been removed and in its place a passwd file is being used as described above. 3. To display information on all tables use -T option. The earlier option -t 'alltables' has been removed. 4. All options are now case sensitive. This is consistent with standard unix convention. 5. Tool compatible with ver 5.0 using I-STAR and I-CONNECT. Some modification required to use the tool on a stand alone ver 5.x database without I-STAR and I-Connect. Email me if required. Limitations of this tool ------------------------ This tool was written as an aid for devlopers and DBAs. However this is is not a full feldged DBA tool. It does not show information about fragments, extents and other related information. BUGS/SUGGESTIONS ---------------- Report bugs or suggestions to srkrishna@yahoo.com. ACKNOWLEDGEMENT --------------- Art S Kagel Jonathan Leffler.