SELECT count(*) FROM user_tab_columns WHERE table_name = 'FOO'
devrait vous donner le nombre de colonnes dans foo. Vous pouvez obtenir pas mal d'informations auprès de USER_TAB_COLUMNS et USER_TABLES (il y a aussi ALL_ et DBA_ variantes).