Having benefited so much from the PowerShell community over the years, I have wanted to give back in some way. As part of my day job as a systems administrator, I'm constantly having to interact with databases. I've wanted a straight-forward, powershell-y way to interact with them that didn't require the complexity of .Net code. I also didn't want the overhead of the Sql Server PowerShell Snapin (and that limited me to a single DB vendor). So over the years I wrote a script module that packaged up the basic functionality I wanted, wrapping the underlying .Net mechanics in powershell verb-noun functions. Further, this allowed me to transparently support both Oracle and Sql Server.
More recently I needed to be able to support PostGre and SQLite, and so I have completely redone my original module as a binary module written in VB.Net. This gave me the ability to refactor and add support for bulk-copy as well as informational messages and transactions in a more intuitive fashion. Thus SimplySql. The basic format is to open a connection to a database, execute queries and then close your connection. The module supports (theoretically) an unlimited set of discrete connections (each cmdlet has a "ConnectionName" parameter that you can use to distinguish between them, if you leave it off, it defaults to "Default").
I hope this module proves beneficial to those in the powershell community. You can find the source code and binaries at http://simplysql.codeplex.com. Thanks.
Have you considered moving the code to C#?
Powered by IDERA