Question

As in subject... is there a way of looking at an empty table schema without inserting any rows and issuing a SELECT?

Was it helpful?

Solution

Are you looking for DESCRIBE?

db2 describe table user1.department

Table: USER1.DEPARTMENT

Column             Type        Type
name               schema      name               Length   Scale    Nulls
------------------ ----------- ------------------ -------- -------- --------
AREA               SYSIBM      SMALLINT                  2        0 No
DEPT               SYSIBM      CHARACTER                 3        0 No
DEPTNAME           SYSIBM      CHARACTER                20        0 Yes

OTHER TIPS

SELECT *                
FROM SYSIBM.SYSCOLUMNS  
WHERE                   
TBNAME    = 'tablename'; 

For DB2 AS/400 (V5R4 here) I used the following queries to examine for database / table / column metadata:

SELECT * FROM SYSIBM.TABLES -- Provides all tables

SELECT * FROM SYSIBM.VIEWS -- Provides all views and their source (!!) definition

SELECT * FROM SYSIBM.COLUMNS -- Provides all columns, their data types & sizes, default values, etc.

SELECT * FROM SYSIBM.SQLPRIMARYKEYS -- Provides a list of primary keys and their order

Looking at your other question, DESCRIBE may not work. I believe there is a system table that stores all of the field information.

Perhaps this will help you out. A bit more coding but far more accurate.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top