Monthly Archives: December 2013

Digging Around For Free Tools – Codeplex

Digging Around In Codeplex

Codeplex is probably the best source for Microsoft focused projects. You will find a lot more than just base SQL Server bits. Codeplex covers a large range of technologies and also covers pretty much every aspect of SQL Server. Codeplex isn’t as old as SourceForge so if you do find a project that has been abandoned it may not be too old to use or may be easier to update. When Codeplex finally added git support they on me over in a big bad way. The search feature is a bit simplistic but you still have some sorting and filtering options available to you.

SQL Power Doc

SQL Power Doc is a collection of Windows PowerShell scripts and modules that discover, document, and diagnose SQL Server instances and their underlying Windows OS & machine configurations. SQL Power Doc works with all versions of SQL Server from SQL Server 2000 through 2012, and all versions of Windows Server and consumer Windows Operating Systems from Windows 2000 and Windows XP through Windows Server 2012 and Windows 8. SQL Power Doc is also capable of documenting Windows Azure SQL Databases.

This thing is just crazy in the amount of data it gathers along with base recommendations it can produce. I’ve used this a few times and have yet to find it lacking. It isn’t the speediest thing but if you need to get a look at an environment for the first time I’d recommend you take it for a spin.

SQL SPADE

SPADE simplifies the process of standing up a new SQL Server instance by applying standard Operating System pre-configurations, Installing SQL Server and then applying post-configurations and creating standard objects.

SPADE is a tool that is designed to speed up your standard deploymets of SQL Server. You may be saying “But I can already do an unsattended install”…but that’s not all that’s involved in most server builds. There are Operating System configurations like Microsoft Distrubuted Transaction Coordinator (MSDTC), Local Security Policy and others. I’m sure that you also have standard SQL objects that need to be deployed like Stored Procedures, Agent Jobs, Operators, etc. All of this can be done by SPADE automatically by running 1 simple PowerShell script.

SQL SPADE is a tool I’ve come to rely on more and more these days. Mike Wells has put a ton of work into automating something that can be difficult at the best of times. This is a complete end to end solution for deploying SQL Server.

DatabaseLint

DBLint is an automated tool for analyzing database designs. DBLints ensures a consistent and maintainable database design by identifying bad design patterns.

Evaluating the quality and consistency of a database schema by a manual review is time-consuming and error-prone. To accommodate this challenge, we propose DBLint, a fast, configurable, and extensible tool for automated analysis of database design. DBLint currently includes 46 design rules derived from good database design practices. The rules discover design errors, which are collected as issues and presented in an interactive report. The issues are used to calculate a score for each table and an overall score. The scores are based on the severities of the issues, their location in the schema, and a table-importance measure. DBLint has been tested extensively on more than 35 real-world schemas, identifying a large number of relevant issues. Developers from four organizations have evaluated DBLint and found it to be useful and relevant, in particular the overall score and report.

This is one of the more unusual yet useful projects I’ve come across in a very long time. I’m a huge fan of lint’ers for lots of other languages having a toolset like this for SQL Server I’ve been evaluating it and will probably be rolled into our build tools.

Up next: GitHub

Digging Around For Free Tools – Google Code

Digging Around In Google Code

Google Code was very thin when it comes to SQL Server. I did find a few of interesting projects that may appeal to others as well as me. I will say there was a TON of use SQL Server with x programming language.

Project RoundhousE

“Professional Database Versioning and Change Management”

RoundhousE is an automated database deployment (change management) system that allows you to use your current idioms and gain much more.

It seeks to solve both maintenance concerns and ease of deployment. We follow some of the same idioms as other database management systems (SQL scripts), but we are different in that we think about future maintenance concerns. We want to always apply certain scripts (anything stateless like functions, views, stored procedures, and permissions), so we don’t have to throw everything into our change scripts. This seeks to solves future source control concerns. How sweet is it when you can version the database according to your current source control version?

This was probably the most well rounded project I’ve seen on any of the open source repository sites. It was also one of the most complete versioning and change management solutions as well. I also have seen it on one of the other repository sites but this one seemed more up to date.

NCrontab

This article shows how to use NCrontab to generate occurrences of a crontab-style schedule as a table in SQL Server (2005 or later), which can then be used in queries and especially joins to do interesting things.

This is a solid example of using the CLR for something other than regex. Documentation isn’t horrible and it is unique bit of kit.

dbrefactor

C# library for versioning and refactoring database structure using Microsoft SQL Server

I picked this one because it was a good idea but has been abandoned. This is one of those projects that could be revived by the right developer. Refactoring SQL Server schema and code can be a complete pain in the ass and any tool that makes that better is worth looking at, even if it has aged a bit.

 

Next up:

SourceForge

Digging Around For Free Tools – BitBucket

Digging Around In BitBucket

BitBucket was very thin when it comes to SQL Server. I did find a couple of interesting projects that may appeal to others as well as me.

BonSQL

Turn any version of Microsoft SQL Server into a platform capable of acting just like MongoDB – only you get transactions and the ability to join with traditional relational data as well!

This is a nice example of using newer methods with our good ol’ SQL Server engine.

DeploySQL

Scripts to auto-deploy SQL from SQL Server and to dump database objects to disk (so they can be searched or committed to source control).

There are lots of other projects like this that are designed to aid in versioning and source control. I picked this one because I didn’t want to have just one project from BitBucket 🙂

So, this is why I don’t search BitBucket very often. There just isn’t enough there for me to bother with.

Next up: Google Code