dbdesc blog

database documentation

Split SQL Server DTS Packages Documentation in Several Files Using Dtsdoc 1.2.5

Until now, when documenting various DTS packages using DTSDoc you got one big HTML file which included all the packages. This was no problem as long as there were not too many packages.

If you try to document many DTS packages, the resulting HTML file could be so big that can take a while to load and render by the browser.

With this new version, you can split the documentation in various files, one per package. DTSDoc generates an index file automatically linking every package documented.

I think this feature will alleviate some customers which where having problems due the gigantic files produced by DTSDoc in some scenarios.

Please download DTSDoc 1.2.5; the installer will automatically upgrade any previous version, so there’s no need to uninstall anything.

dtsdoc125_splitdocumentatio

Dbdesc 3.1.1 Available

I’ve just uploaded a new minor release of dbdesc. This version adds a couple of command line switches to facilitate the integration of dbdesc in custom scripts.

Now you can type:

dbdesc SqlServer -Ls

It will output all the SQL Server instances visible from your computer. Also you can use -Ld to list the databases stored in a server:

dbdesc SqlServer -S Server1 -Ld

I’ve also changed the code to discover SQL Server instances on the network. The old one used a special ODBC network call which sometimes was unable to discover some servers. Now I’m using the .NET 2.0 API that should work much better.

As always, this is a free update for registered customers. Simply download and run the new installer and it will update any previous version of dbdesc.

Minor Updates for Dbdesc and Dtsdoc

After some time with no visible new versions, today dbdesc and dtsdoc got both an upgrade. During this time I’ve been silently uploading new build versions to fix small bugs. Now it’s time to tag those fixes as new point releases and add a couple of features.

dbdesc 3.1

Even though dbdesc supports SQL Server 2008 since RC0, it was not able to document CREATE TABLE scripts. Finally dbdesc is able to pick the latest SMO version and produce those scripts. If you try to document a SQL 2008 database from a machine without SQL Server 2008 you’ll need to install this component from Microsoft: Microsoft SQL Server 2008 Management Objects. If this component is not available, the database will be documented just fine but table scripts will be missing.

dtsdoc 1.2.4

When using Data Driven Query Tasks or a Data Pump Tasks, you can apply some transformations to the data. The usual transformations are copying columns and running an ActiveX script. However there are others like ReadFile, WriteFile, UpperCaseString, and others. These transformations happen to have its own custom properties, and previous versions of dtsdoc were not documenting them.

This version also shows the package names of a server sorted alphabetically. You could do that before simply by clicking the list header, but an anonymous user asked why there were not sorted this way in the first place. Very true.

Microsoft Jet Engine 64-bit and Dbdesc 3.0.2

First of all, there’s no 64-bit edition of the Microsoft Jet Engine and it seems never will be. So when I received this error from a user using Vista 64 I panicked…

The ‘Microsoft.Jet.OLEDB.4.0’ provider is not registered on the local machine.

Last month I released a dbdesc version for 64-bit OS. It had some third-party libraries (read Firebird) targeting 64-bit.

When you target ‘Any CPU’ in a .NET application your app will be loaded using the “native” platform of the system. In XP/Vista 64 it will be loaded as a 64 bit application, which means that it expects to load 64 libraries. It cannot load a 32 bit-only libraries like the Microsoft Jet Engine. That’s the same reason why I needed to update the Firebird libraries to the 64-bit version and generate a new installer for dbdesc.

The solution is now clear. Dbdesc has to target the x86 platform. This way, I don’t need to use special 64-bit build of any third-party library and the same code will run fine on both 32 and 64 bit OS. For a relative small app like dbdesc, there’s no visible performance loss.

So, dbdesc 3.0.2 is out. This time just one installer; no matter which OS you run.

Great!

Dbdesc 3.0.1 (64-bit OS Support)

I’ve just released a new version of dbdesc for Windows XP x64 and Windows Vista x64. Even though the core of dbdesc is not tied to a specific architecture, some of the libraries that dbdesc needs (Firebird and others) are processor-dependent. So if you are running a 64-bit OS, now there is a specific installer for you.

Also some minor bugs got fixed in this version.

I’ve added the link on the download page.

Documenting SQL Server 2008 RC0 Databases

One of my customers asked me yesterday if dbdesc 3.0 supports SQL Server 2008 databases.

The answer is yes, dbdesc works just fine with SQL Server 2008 RC0 and even documents the new data types.

SQL Server 2008 new data types

There is however a small issue… it won’t script tables. The current version of SMO does not support SQL Server 2008 databases and even though there is a workaround using DMO, I prefer to wait until the RTM version.

Dbdesc 3.0 Is Ready… To Document More Databases!

After some time without new features, just bug fixes and maintenance releases, I’m happy to announce that dbdesc 3.0 is ready.

This new version comes with two major new features and several improvements:

  • Support for MySQL 5.0 databases
  • A Table Dependency Matrix is automatically generated which makes very easy to “see” the relationships between tables

Adventure Works Table Dependency Matrix Additionally, your credentials and database lists are now stored per server, which means less typing when documenting databases in different servers.

The extended properties editor has been improved too. Now it allows you to add descriptions to foreign key constraints, users and roles.

As usual, all these improvements are free for registered customers.

Download dbdesc 3.0 now

Please note that dbdesc 3.0 requires .NET Framework 2.0. I think that .NET 2.0 is widely spread now so it shouldn’t be a problem for anyone. I’ll be supporting dbdesc 2.2 too (which runs with .NET 1.1), even though no new features will be added, just bug fixes.

Dtsdoc Customer Testimonial

From time to time some dbdesc/dtsdoc user sends me a brief note about how satisfied he is with my products. I really appreciate those comments as they push me forward. I often ask them for permission to quote them and put a testimonial in the website.

A few days ago I’ve received a great email from Hugo Toledo, a long time dtsdoc customer. This time I’ve decided to share it with you here:

Hello folks, I wanted to share with you another recent dtsdoc-based success. We have had to go back and analyze a transformation problem in an older application. Thanks to dtsdoc we were able to very, very quickly determine that a typo had occurred during a recent and, one would think, minor update. Without dtsdoc this could have taken hours and, because of the tedium of the effort, we may very well have missed a few more places where it occurred. Thanks, again! Hugo Toledo Principal Chateaux Software

Dtsdoc 1.2.3 Maintenance Release

I’ve just released a maintenance version of dtsdoc.

Now the DTS call tree image automatically increases its width so package names don’t wrap. It makes the image easier to read.

SQL Server DTS call tree image

This version also adds a new version of the HTML_Images XSL template which presents the packages ordered alphabetically and fixes a small error in the templates.

Feel free to download this update from the download page. The installer will automatically upgrade any previous version of dtsdoc.

Diagnose SQL Server 2005 SP2 Install Problems

I was checking the pending updates in one of my test VISTA machines and the SQL Server 2005 Service Pack 2 was still in the list. I tried to install it using Windows Update but it returned an error: Error code 2B22. Windows Update Error code 2B22 The link Get Help didn’t bring any help as the error code was not in the list. So I googled for it. Surprisingly I get very few results and most of them were the same Microsoft forum post republished by others sites. The post was simply someone asking for help and a couple of ‘me too’ responses.

Anyway, I needed more info about the problem so I looked for a log in my system. I’ve founded it in C:\Program Files\Microsoft SQL Server\90\Setup Bootstrap\LOG\Hotfix

The file you want to look at is Summary.txt which holds the log of the last update. You may see other files like Summary_0.txt, Summary_1.txt … Summary_N.txt. Those contain information about past updates. SQL Server 2005 SP2 Error 2B22 detail As you can see in the image, the installer was not able to start the service. (Note that the error number here is 11402; 2B22 in decimal). After checking the service properties, it turned out that it was configured to run under a user account which password had changed recently. I fixed the problem and run the update again.

Once more, the update didn’t succeed. This time the error code was 780. However, now I knew where to look to diagnose the problem: SQL Server 2005 SP2 Error 780 detail The service SQL Server VSS Writer (SQLWriter) was disabled. Changing the Start Up property to Manual did the trick. Finally the Service Pack 2 install succeeded.