Microsoftは、.NET Framework 4にLocalDBのサポートを追加した。LocalDBは、SQL Server “Denali”の無料の開発者エディションで、管理のオーバーヘッドなしに大部分のサーバーのAPIを提供することを意味する。
Microsoftは、.NETランタイムの更新で、SQL Serverの接続性にAlwaysOnとSQLClientのLocalDB サポートなど、いくつかの改善を含むUpdate 4.0.2をリリースした。Visual StudioからLocalDBインスタンスへのアクセスが可能になったことで、開発とテストプログラムがシンプルになり、SQLデータベースの維持が簡単になった。
Microsoftは、サーバーとアプリケーションのテストとに利用できる、これらのデータベースサーバーの無料の制限付きエディションであるSQL Server Expressを提供している。 しかし、SQL Expressはいくつかのインストールと管理のオーバーヘッドがかかる。また、より大きな他のSQL Serverエディションを維持しながら、ラップトップなどの小さな開発環境で動作するもので動作するものを維持のは、より困難である。そのためMicrosoftは、SQL Server 2012コードネーム“Denali”にLocalDBと呼ばれる新しい専用のバージョンを追加することを決めた。
LocalDBにアクセスするために開発者は、接続文字列 "Data Source=(localdb)\v11.0;Integrated Security=true" を提供する必要があり、データプロバイダは子プロセスとしてLocalDBインスタンスを開始する。またLocalDBは、接続プロセスでデータベースサーバーを通すことなく、データベースファイルに直接アクセスするデータベースファイルのアタッチをサポートする。
- LocalDBは、SQL Expressや他のエディションのように、同じsqlservr.exeから実行する
- クライアントは、LocalDBに接続するために同じT-SQLを使用できる
- アプリケーションは、LocalDBに接続するために同じプロバイダを使用できる
- LocalDBは、データベースサービスを作らない
- LocalDBプロセスは、自動的に開始/終了される
LocalDBは、SQL Server Compactににて、使用がシンプルで簡単だが、いくつかの違いがある。SQL Compactは、インプロセスのDLLとして実行されるが、LocalDBは、別プロセスで実行される。Compactは、制限されたRDBMS機能のみが提供されるが、LocalDBはストアドプロシージャ、ジオメトリ、ジオグラフィ型などを含むよりリッチな機能を提供する。Compactは、非常に小さなメモリを使用し、バイナリサイズは4MBだが、LocalDBのバイナリサイズは、140MBである。
LocalDBは、SQL Expressを置き換えるという意味ではなく、開発者がアプリを開発する際に、小さなオーバーヘッドで開発できるようにするものである。Microsoftは、10GBのデータベースサイズに制限された小さな評価プロジェクトに興味があるユーザー向けに無料のSQL Server Expressエディションを継続して提供する。