SQL Clone
SQLServerCentral is supported by Redgate
Log in  ::  Register  ::  Not logged in

Review: Total SQL Analyzer

By Steve Jones,

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 information:

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:
FMS 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


Total article views: 8108 | Views in the last 30 days: 0
Related Articles




How do you document your reports?

I have yet to find a good way to document report requirements, filters, integration, etc...



Instance and DB documentation


Wednesday Quest: New Product Training and Documentation

Product documentation and product training are two areas where our customers consistently press us t...


SSRS Reports deployment to Production Server

SSRS Reports deployment to Production Server

product reviews