PDF database documentation improved and Oracle support: dbdesc 4.0

January 17th, 2012

After some time in maintenance mode, I’m happy to announce that dbdesc v. 4.0 is ready! You can download it from here:

DownloadDownload dbdesc 4.0

This new version comes with two major features and several bug fixes. The most obvious feature is that dbdesc supports Oracle databases now. However it is still in beta. I don’t usually work with Oracle so, even though I’ve tested it against every Oracle database I’ve found, it might still have some bugs. If you find one, please send me an email and I’ll try to fix it as soon as possible.

This version also improves the PDF output. It finally has working links and a PDF index (bookmarks) so now is very easy to navigate the PDF documentation. It also fixes the ‘OutOfMemory’ bug when generating very large documents 3000+ pages.

I really hope you like this version. As always, I look forward to your comments about this version and what you’d like to see in future versions.

PDF Database documentation output


dtsdoc 1.2.6 maintenance release

April 20th, 2010

Just a quick note to inform you that I’ve released a new version of dtsdoc. This is a small maintenance release.

A dtsdoc user reported that some properties of the transform data task were missing in the documentation. Now they are included. It also fixes a couple of minor bugs.

As always this is a free upgrade.


dbdesc 4.0 beta, Oracle support

March 15th, 2010

I’m glad to announce that next version of dbdesc is almost ready and it includes support for Oracle databases. Although I still have to finish some areas, the core functionality is already there. So if you want to try it out, please download it and let me know what you think, does it work with your databases? are you missing any information? I’d really appreciate any feedback you could provide. Please send your comments to support@dbdesc.com.

This is the direct download link: dbdesc 4.0 (beta)

It will automatically upgrade any previous version of dbdesc.


Mail problems

December 3rd, 2009

I’ve had some email problems lately (thanks Alan for the heads up). I retrieve my emails with Gmail for both dbdesc and dtsdoc email addresses. However a couple of mailboxes have been piling up email until they finally stop working. Somehow the accounts got misconfigured.

I’ve already fixed the problem and I’m reviewing the emails. Please accept my apologies if you contacted me and I didn’t answer. You’ll be hearing from me soon.


Minor release available, dbdesc 3.1.2

November 9th, 2009

I’ve just published a new version of dbdesc. This is a minor release that fixes several errors reported and it also improves some areas. For example now it’s possible to specify the port when connecting to a MySQL database. Access 2007 support has received some care too.

Please go to the download page to get the new version. The installer will automatically upgrade any previous version installed.

As always, this is a free update for registered customers.


Login failed for user ‘sa’. 4 things to check

July 7th, 2009

Last week a customer of one of my applications (not dbdesc nor dtsdoc), reported the following error when the app performed a special task:

Login failed for user 'sa'
 

This app installs its own SQL Server instance with SQL Server authentication and it manages the users including the sa account. There’s no way to change the ‘sa’ password from the application, so probably someone might have been playing with my instance.

I logged in to this server and connect to SQL Server using the osql tool using windows authentication:

osql -E -S .\MYAPP
 

I then reset the sa password back to the original one:

1> sp_password NULL, 'mypassword', 'sa'
 

Unfortunately, this didn’t solve the problem. So the ‘sa’ password was intact after all.

Next thing I checked was that mixed-mode authentication was indeed enabled. It was unlikely that someone had changed this but.

I checked the registry key:

HKLM\Software\Microsoft\Microsoft SQL Server\Instance Name\MSSQLServer\LoginMode
 

It had the correct value 2 which means mixed-mode.

What else to check? Ah, maybe the ‘sa’ login has been disabled. Let’s enable it again:

ALTER LOGIN sa ENABLE ;
GO
ALTER LOGIN sa WITH PASSWORD = 'mypassword';
GO

No luck, still can’t log in using the sa user.

Here I started to be worried about this issue. I checked the system logs, nothing special there. Some errors reporting that ‘sa’ was unable to connect to SQL Server and nothing else. I also checked the SQL Server errorlog file. Everything seemed normal.

I have to say that this company has no IT department per se, but a guy who regularly helps them with their domain, active directory, etc. This guy was on vacation and unreachable.

I had no other option that to ask my customer if they had made any changes to their server, hoping to get some clue about what was going on. And he confessed. They were making changes to the Windows security policy editor adding and removing permissions a few days ago. He didn’t know exactly what they did, only that they “touch” different things (ouch!!).

Anyway, not my problem. Fortunately this gave me the clue I was looking for. The ‘sa’ user was being affected by a Windows policy setting. So I fixed it using this code:

ALTER LOGIN [sa] WITH PASSWORD='mypassword', CHECK_POLICY=OFF
GO
ALTER LOGIN [sa] ENABLE
GO
 

Note the CHECK_POLICY parameter. It makes the login immune to domain setup changes.

In summary:

4 things to check if you can’t log in to SQL Server using the sa account

  1. Check the password and provide a new one if necessary
    sp_password NULL, 'mypassword', 'sa'
  2. Check that mixed-mode authentication is enabled
    HKLM\Software\Microsoft\Microsoft SQL Server\InstanceName\MSSQLServer\LoginMode

    Should have the value 2. If not, change it and remember to restart the service.

  3. Enable the sa account
    ALTER LOGIN sa ENABLE
    
    
  4. Check that the sa account is not being affected by the domain security policy
    ALTER LOGIN [sa] WITH PASSWORD='mypassword', CHECK_POLICY=OFF


System.Data.OraClient deprecated in .NET 4.0

June 17th, 2009

It seems that Microsoft is dropping their Oracle ADO.NET Data Provider and suggest to use a third-party one.

The Decision

After carefully considering all the options and talking to our customers, partners, and MVPs it was decided to deprecate OracleClient as a part of our ADO.NET roadmap. 

I kind of understand this decision, they want to improve ADO.NET but don’t want to invest resources supporting other competing database systems. However, I think this is very inconvenient for .NET developers in general. This will force us to research which vendor has the appropriate library and pay for it. And of course, take another external dependency.

Good news for those vendors though.


Split SQL Server DTS packages documentation in several files using dtsdoc 1.2.5

May 4th, 2009

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

March 5th, 2009

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

January 19th, 2009

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.


Next Page »