Bill Harris wrote:
>  Unless someone (Oleg?  me?) wants to update dbman to allow for no tables
>  reported back

If you're willing to update dbman (at least locally), I came across
something during my earlier investigation that might provide you an
alternative.  But I'm not sure it'll work, or be useful if it does.

When I was looking uses of the verb sqltables, I came across it in
ddtbl_jdd_, which itself is called in ddtblx_jdd_ .  That verb also seems
to enumerate the tables in a database (so I'm not sure why dbman doesn't
call it, rather than reimplementing it).  But the key is that ddtblx uses
the column-oriented ddfch, whereas ddschtbl uses of the row-oriented ddfet.

Maybe ODBC will be more consistent about returning the right number of
empty boxes, rather than the right number of columns in a table with no
rows.  Worth a shot, anyway.

Try replacing the line

     tbl=. y  ddschtbl ch

in ~addons\data\dbman\dbman.ijs with 

     tbl=. <@:dltb"1 ] 2 {:: ddtblx ch [ require 'strings'

it's the fourth line of the verb sel_schema, and the 177th line of the
file.  

I'm not sure what implications this will have; ddschtbl takes a left
argument, and ddtblx doesn't, but it ddschtbl's logic seems to allow an
empty (unspecified) x.  For this and other reasons*, I'm not sure it'll
work.

But even if it does, I'm not sure how useful it will be.  Sure, it'll get
rid of the error message.  But if you can't see any tables, what will you
use dbman for?

-Dan

*  Primarily because I haven't tried this anywhere but in my head :)
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to