during the evaluation of Toad for Sybase resp. SAP (versions 2.x and 3.0), I found the following issues:
Access to system tables
Since Version 3.0 Toad seems to require access to some system tables, which are not accessible to “normal” users in our setup:
- Executing “alter table” from the “Object Explorer” fails, because it seems to require access to the “dbccdb” system database.
- Toad seems to require access to the “sybmgmtdb” during initial connection:
- When opening the first connection from the Connection Manager, it seems that Toad tries to query sybmgmtdb and receives an error form the server, that the connecting user is not valid for this database.
- After closing the error message, one of the following happens:
- Everything works fine
- Everything works fine, but the Object Explorer is empty. After refreshing, e.g. pressing F5, everything is ok. In some cases the Filter-Inputbox is missing after refreshing.
- An error occurs (if needed, I can provide message and stack trace)
- Opening or reopening a second connection to the same or a different server works without problems, as long as one other connection is open.
Both system database are not (and will not be) accessible to “normal” users in our setup. In versions before 3.0, these issues did not exist. Therefore, I am wondering, if this is really needed or could, for example, be controlled by a configuration switch. Is there any posibility to prevent access to these databases in the current version of Toad?
Handling numeric and decimal columns in grids
- Display, sorting and filtering of columns of type numeric or decimal does not work correctly in grids.
- The issue exists in all tested versions of Toad. All tests have been performed with German localization settings.
- Sorting a grid column with values from a numeric or decimal column is somewhat arbitrary. Depending of the pre-sorting from the query (order by clause) the grid sorting results in different orders.
- Filtering does not work correctly in some cases:
- “Equal” and “not equals”: result is correct.
- “less/greater than”, “less/greater than or equal to”: result is correct, iff the comparison value is negative. If the value is positive, the result contains positive and negative values.
- “less” and “greater” seem to be mismatched.
- Source: -0.3, -0.2, -0.1, 0.0, 0.1, 0.2, 0.3
- Filter “less than 0.1”: -0.3, -0.2, 0.2, 0.3
- Filter “greater than 0.2”: -0.1, 0.0, 0.1
Handling results from print statements
This is not actually an error, but I would suggest to make it configurable. Furthermore, the behavior is not consistent.
- The results of print statements are displayed as a separate result set for each single print statement. We often use print statements to control the status of loops over cursors. This can result in several thousand result sets displayed in Toad, which is very confusing.
- The results of print statements of consecutive runs of a script in the same editor are displayed in the same “Result Sets” tab, making it difficult to distinguish the output of the different executions.
- The display of results of print statements in the “Messages” tab is incomplete. Sometimes they are displayed completely, sometimes partially and sometimes not at all. Independent from this display, the display as result sets is always complete.
- Toad ignores the setting of “flushmessages”. It always postpones the output of print Statement until the script has finished.
Nice tool. Just two minor question:
- Hitting F8 (“Step over”) resumes execution to the end of the script or the next breakpoint. Shouldn’t it just execute the next statement?
- Is it possible to step into a procedure executed inside the procedure the debugger was started on (e.g. stepping into procB which is “exec procB” inside procA)? I thought that F7 (“Step Into”) should do this, but it actually executed the whole procedure in one step.
If needed, I can provide additional Information like scripts and error messages.
Final remark: All tests have been performed on Sybase ASE 15.7 and Sybase ASE 12.5 using Toad for SAP Beta Build 188.8.131.526.
I hope you could help with these issues, because we need to make a tool decision and the mentioned issues are critical for us.