MSDNフォーラムで「LocalDB をどう考えますか?どう捉えていますか?」っというスレッドでLocalDBの話題で盛り上がっていました。
LocalDBはアプリケーションと共に配置し、本番のアプリケーションでも使用できる、つまり開発専用ではないという事実があります。
マイクロソフトの人がBlogでどういう風に語っていたか、セミナーでどういう風に語っていたかは、一旦わきに置いて、Microsoftが会社としてどう定義しているかを確認してみましょう。
ここで言う会社としての定義は、「マイクロソフト ソフトウェア ライセンス条項 MICROSOFT SQL SERVER 2014 EXPRESS LOCALDB」を参照するのが良いかと思います。
(C:\Program Files\Microsoft SQL Server\120\License Terms)
一部分だけを抜粋。
1. インストールおよび使用に関する権利。お客様は、お客様のプログラムの設計、開発、およびテストを行うために、任意の数の本ソフトウェアの複製をお客様のデバイスにインストールして使用することができます。
うーん、本番アプリケーションで使用できるようには読み取れないです。
お客様は、以下を行うことはできません。
• 本ソフトウェアを商用ソフトウェア ホスティング サービスで使用すること。
少なくとも、有償のオンラインサービスで使用してはいけないと明示されていますね。
では、組み込みは…となると、やっぱり第一条の文面からすると、
ダメで、「プログラムの設計、開発、およびテスト」に限定されているように思います。
ただ、自分は法律の専門家ではないので、ライセンス条項をどう解釈するか、どう捉えるべきかは言えないので、私見ってことで…。
ちなみに、再頒布については以下のように書かれていました(まぁ、これも抜粋)。
• お客様は、本ソフトウェアのオブジェクト コード形式 (以下「再頒布可能なコード」といいます) を複製して再頒布することができます。および、
• お客様は、お客様のプログラムの頒布者に対して、お客様のプログラムの一部として再頒布可能コードの複製および頒布を許可することができます。
再頒布できるとは言え、LocalDBの使用権利が「お客様のプログラムの設計、開発、およびテストを行うために」というのは変わらないので、通常運用としては使用できないと思います。