SQLServerCentral Article

Review: Total SQL Analyzer


Total SQL Analyzer

by FMS Software

4 Stars -


I noticed a press release for a new documentation product a few weeks ago and

the product looked really interesting. I hate documenting things as much as anyone, but

I recognize the value and try to spend time working on it. I was excited to see a product that

would ease the burden of documentation.


I received a copy of the product from FMS and dropped the CD into my computer. The installation was

flawless. The installation offered to backup any files that were being replaced, which I assume

is forward thinking by FMS in planning for upgrades. One thing that was annoying was the serial number

dialog. I have become used to the cursor automatically jumping from one field to the next. It was

a annoying to manually tab between fields. This is one of the few things that I found unpolished about

this program.

The documentation mentioned this program can only run in a single instance (one copy running at a time).

This is something that quite a few programs require, but few actually check for. I checked and this

functionality is implemented and works. One note on this program is that is actually provides printed

documentation. This is something I rarely find, but it was nice to have a copy. Especially since the

online help is a dialog that is always on top of the program while it is open. While online help is open,

it was cumbersome to work with the product.

I setup a quick job using defaults and ran it against one server. The job was to document all

aspects of a server that I manage. It is mentioned in the documentation

that the process can be slow and it was. I ran the job against all objects and it used about 30-40% of my

CPU (Dell 600MHz, 256MB RAM). I continued to work in the background, mainly Outlook and Query Analyzer, and

I know the process took over 15 minutes, but I do not know how long exactly. One thing that was nice during the

setup of the job is that there is an option to minimize the server load. This introduces a delay between some of the

documentation checks. A really nice feature for production servers.

Program Execution

During the execution, I received a documentation error. This was a dialog that mentions some

error occurred and to check the log file. I did and the log file mentioned that a table was not found

in the 'Tables' collection. This was strange and there wasn't enough detail for me to determine

the reason for this error.

Update: I contacted support and we determined the error was a result of the object being owned

by a different user than 'dbo'. A bug IMHO that needs to be fixed..

The first item I noticed while checking the properties of a database was the following


Notice that the size shows 478 with no units. Also the space available: shows 447507,

again no units. How should I interpert these numbers? I did not find anything in

the included printed or online

documentation. This was one of the few areas that this product did not appear very polished.

I asked support and recieved an answer, but it would be a simple enhancement to include the units

on the screen.

Also, for the scripts that are displayed, it would be nice to be able to see the whole

script easily (word wrap it) in the right hand pane. I did double-click the script and the

entire script appeared in a dialog. This was inuitive for me and works well enough. This

is one feature I wished Query Analyzer had.

I chose a table and received quite a bit of information about the table. Here is the

summary tab:

The properties tab contains most of the information that one would ever need about the table. Most

of this information is pretty easy to find, but this product brings it together in one place.

In the performance tips, there was an item about NULL

values. Then in the lower right pane, there is a description which contained

a hint. Double-clicking this brings up the job properties instead of the issue with

performance. It was inconvenient and combersome to widen the column and scroll right

to see the data. This is one item that needs to be fixed.

I then browsed a job. The schedule ID was given, but the schedule is

not decoded. This is a great place for an enhancement that

should be relatively easy. Without this, the SQLAgent report on scheduled jobs loses quite

a bit of his value IMHO.


I chose the reports menu item and recieved a dialog box categorizing the reports. The list is

fairly exhaustive and I did not really find many holes. Here is a partial listing of the

Tables reports:

I would like to ability to customize the reports a little more (corporate logo, rearrange fields, etc).,

but overall I think most reports that one would want are provided. I ran the Table Columns

report and received the following (in preview mode):

I tested the export to HTML - again, slow, but hey, unlike many programs I have use, it works!

The complaints I have are that the files are not linked if you export to multiple files. I know this

is a problem using Crystal, but I would have to develop a solution to build an index,

which still wouldn't give me internal links in the files without lots of effort. The

single file is too large and still doesn't contain internal links.


This product is slow, but documentation is fairly slow. I think

the UI could use some work, but this is probably not a

product that you will spend much time in the UI. Having the ability

to schedule jobs and have them run automatically is nice. Of course, the

management of the versions is something that one will need to handle. A nice

enhancement would be to automatically expire (delete) versions after

xx days/executions/etc. Similar to what SQL Server does with the

backups in the maintenance plans.


I like that this is a flat fee product. You buy a copy

of this tool and then run it against your servers from your

workstation. For small shops like me, I can buy a copy and run it

against 2-3 servers every weekend (or night) and I am fine.

For larger shops, the sheer time required to generate the reports will require you

to buy a few copies, but its a great tool. FMS does offer discounts for multiple copies of the product.


I scheduled a job to execute later in the day to see how this feature works. I received the

dialog below:

Not that this is a big deal, but it is a little annoying to have to leave this product running.

Especially since I couldn't minimize it. The scheduleing worked great. I left for a meeting and when

I came back, the job had been run.

Note: While the scheduling feature is nice, it is limited to a single job at a time. This prevents

me from scheduling a series of reports against multiple servers to run on a regular basis, like the end of

the month, for example.


I contacted support a number of times for various issues, some real, some not. I found that

support responded quickly to my questions and asked followup questions that showed they were not only

trying to solve the problem, but understand my reasons for asking. Hopefully some of the enhancements

I requested will be implemented in the next version.


Documentation of your servers if always a chore, and one that is often overlooked

or not kept up on. For my shop, where we release new versions of our product weekly,

this would be a great timesaver and would actually allow me to keep up on doucmentation.

There are, however, some enhancements that are needed to truly make this a useful

product for my entire shop. The ease of browsing and searching the documentation.

There are some enhancements that I would really like to see in this product (I've sent these to FMS).

  • Difference - Tracking changes on a large server can be a tedious process. It would be nice for this

    product to automatically compare two reports and report the differences.

  • Online Help - The online help file is configured to stay on top of the main program

    and while viewing help, you must move your windows around to access the program while help

    is open. This made using the help program difficult as I had to close it to work with

    the program effectively. I'd like to see the help window as a normal window that can be placed

    beneath the program window when needed.

  • Documentation Errors - If these occur (and I do seem to get them most times I run this process)

    a hot link to the log or a presentation of the error would be a nice touch.

  • UI - The interface is better than many products, but like most products, the interface could make its use

    a little easier.

  • Objects owned by users other than the 'dbo'. - Usually I do not have any objects that

    are owned by other users, but I do support a third party database that does have objects owned

    by a user. These objects are not documented by Total SQL Analyzer. A big oversight and a bug that

    I hope will be corrected.

  • Scheduling - It would be nice to be able to script against the product or for the product

    to allow multiple jobs to be scheduled. Especially for someone who must manage multiple servers

    and would like to setup a regular rotation of jobs.

Product Information:


8027 Leesburg Pike, Suite 410

Vienna, VA 22182


Total SQL Analyzer

Single License$499 ($399 as this is written)
5 pack$1499 ($1299 as this is written)
25 pack$4999 ($3999 as this is written)

As always, I welcome feedback for this article (use the 'Your Opinion' tab below) and please take

the time to rate this article.

Steve Jones

©dkRanch.net August 2001

Return to Steve Jones Home



3.67 (3)

You rated this post out of 5. Change rating




3.67 (3)

You rated this post out of 5. Change rating