4 回答

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
不知道DB2支持NVL函數(shù)不
你試試
NVL(A,0) 意思就是字段A如果NULL就默認(rèn)是0
如果不行就用case when吧,這個(gè)應(yīng)該是通用的,
case when a is null then 0 else a end

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
參考代碼如下:
DatabaseMetaData metaData = conn.getMetaData();
ResultSet rs = metaData.getTables(null,null,null,new String[] { "TABLE"});
int cnt = 0;
while(rs.next()) {
cnt++;
System.out.println(rs.getString("TABLE_NAME"));
}

TA貢獻(xiàn)1936條經(jīng)驗(yàn) 獲得超7個(gè)贊
數(shù)據(jù)庫(kù)中還有大量系統(tǒng)表的,所以我覺得你查某些模式下的表比較好:
select count(*) from syscat.tables where tabschema='GP'
GP為某用戶模式。
當(dāng)然也可以用
select count(*) from syscat.tables where tabschema='GP'
查出所有表的數(shù)量。
再查出有多少?gòu)埾到y(tǒng)表,就是在SYSIBM、SYSTOOLS下的表數(shù)目。相減就可以了。
我用的是DB2 V9.7。
添加回答
舉報(bào)