AFAIK, DBUNLOAD names the data files it generates based on their table id, leading to filenames like 393.dat, 394.dat and the like.
This is usually handy and omits problems with table names that would be problematic as file names, e.g. in exotic charsets or when several owners use the same table name.
However, the current naming scheme makes some comparisons very difficult, both when
In such cases the table ids of the same tables (i.e. the same owner/table name) may be different, sometimes because one database may have had some more CREATE/DROP sequences or had interim tables with effects on the sequence of table ids generated. - When migrating databases to newer versions, table ids usually change simply because newer versions have typically more system tables.
In such cases, one would have to compare, say, file 392.dat of database 1 with file 412.dat of database 2 and the like, making automatic comparisons very difficult.
Therefore I would suggest to add a DBUNLOAD option to use a file naming scheme based on table names (and owners). I'm sure problematic characters could be masked/replaced in an appropriate way. The goal for such cases should not be to use the exact table name but to choose a unique representation.
It should then generate files like Customers.dat (or DBA_Customers.dat), Products.dat and the like
asked 21 Sep '10, 10:23
I agree with the feature request. More functionality to manage schema changes and data comparisons would indeed be welcome.
Failing that I currently use a proc that generates a .bat file to do the renaming, like so:
answered 21 Sep '10, 15:54