分離ストレージをサポートする組み込みデータベースを教えてください。
-
01-07-2019 - |
質問
組み込みデータベースエンジンをサポートしているものを探しています ストレージの分離. 。現在私が認識しているのは VistaDB です。他にお勧めできるものは何ですか?
要件は非常にシンプルです。
- xcopy デプロイメント
- 分離ストレージのサポート
- できれば無料
IS を使用する場合、ファイルへの正確なパスがわからないことに注意してください。
他のヒント
に続いて ロイズ 答えは、sqlite 用のラッパー ライブラリがあります。 uSqlite これにより、直接または最小限の変更で、目的のものが達成されるはずです。
(Aku のフォローアップの質問のために)詳しく説明すると、次のように変更することをお勧めします。 uSQLstPoll()
ルーチン (uSQLst.c に含まれます)。この段階で、接続しているクライアントからのポートとアドレスの情報が得られます (sockaddr に含まれています)。その情報に基づいて、 uSQLst
構造を変更して、接続先のローカル データベース ファイルのファイル名を変更します。
免責事項:これは、わずかな調査に基づいた可能な解決策であることに注意してください。展開する前に、より徹底的な調査を行うことをお勧めします。
Sqlite は埋め込みを目的としており、無料です。
分離ストレージは直接サポートしていませんが、分離ストレージ API を自分で呼び出し、生成されたファイル名を使用するファイル名として Sqlite に渡すのは非常に簡単なようです。
この質問はかなり古い質問であることは承知していますが、VistaDB は分離ストレージをサポートしており、XCopy を展開可能です。ただし、無料版はなく、商用製品です。
SO の投稿を見てください。 VistaDB の利点 当社がサポートするその他の事項について詳しくは、こちらをご覧ください。
分離ストレージのサポートは、ファイル名がわからないだけではありません。ストリームを操作する必要があり、ファイル レベルのロックを要求してはならず、同じパスに一時ファイルを作成できず、UAC とスペースの制限を理解する必要があります。
私の知る限り、VistaDB は分離ストレージをサポートする唯一の組み込み SQL データベースです。
あなたはそのようなことを行うことができます ファイアバードの組み込み.
分離ストレージはネイティブにサポートされていませんが、ユーザーごとに新しいデータベースを作成するのは非常に簡単です。