Afaik、SQLiteは1つのファイルを1つのファイルに格納します。これは大きなデータベースを扱うときのパフォーマンスを低下させるので、DB全体を1つのファイルに格納せず、別のファイルを異なるファイルに格納するようにSQLiteに明示することは可能ですか?単一のSQLiteデータベース用の複数のファイル
答えて
これらのテーブルを結合する必要がない場合は、手動でDBを分割し、どのテーブルがどのDB(=ファイル)にあるかを言うことができます。
DBに複数のファイルを分割することはできません。ファイル名を指定してDBに接続するためです。
テーブルを異なるDBとして持つことはできません。また、SQLiteでは最大添付データベース数が62に制限されています。 :( – thameera
SQLiteデータベースファイルは、パフォーマンスの低下なしに非常に大きくなる可能性があります。パフォーマンスが低下する可能性があります
ものがあります:
- ファイルロック競合
- テーブルサイズ(インデックスを使用して、書き込みクエリを発行する場合)
はまた、デフォルトでは、SQLiteは制限しますnumber of attached databases to 10。
とにかく、try partition your tables。 SQLiteがこのように非常に大きくなることがわかります。
リンク先から理解している限り、パーティション化の概念は自己実装されています.SQLiteには他のRDBMSと同様にビルドインパーティション化のサポートはありません。 –
質問は約3歳ですが、私は非常に同じ質問を検索したときにここに上陸しました。後期私はそれが可能であること、が分かった:
使用
sqlite3.exe MainDB.db
ATTACH DATABASE 'SomeTableFile.db' AS stf;
アクセス、他のデータベースファイルからテーブル
SELECT * FROM stf.SomeTable;
複数のファイルにまたがることもできます
SELECT *
FROM MainTable mt
JOIN stf.SomeTable st
ON (mt.id = st.mt_id);
https://www.sqlite.org/lang_attach.html
tameeraは62アタッチされたデータベースの制限があると述べたが、私はそれを確認することはできませんので、私はその制限を打つことはありません。
特別なケースの他にも大きな利点は、データベースファイルの断片化を制限し、各テーブルでVACUUMコマンドを個別に使用できることです。
「SQLite_LIMIT_ATTACHED」接続に接続できるデータベースの数を制限するための制限スイッチがあります。たぶん、タメラがその限界に達したのだろうか? – Sampath
- 1. MongoDB複数のデータベースと単一のデータベース
- 2. 複数のWSDLバインディング用の単一ファイル
- 3. MongoDB - SaaSオファリング用の単一データベースまたは複数のデータベース
- 4. AndroidのSQLiteデータベースからの単一行
- 5. 複数対単一データベース
- 6. sqliteデータベースの複数のテーブル
- 7. 単一または複数のデータベース?
- 8. 複数の言語用の複数のSQLiteデータベース?
- 9. androidアプリケーション用の複数のsqlite * .dbファイル
- 10. 複数のデータベースを単一のデータベースにマージする
- 11. 複数のデータのSqliteデータベースの取得
- 12. 複数のスレッド用の単一のHttpClientContext
- 13. 複数のファイルStruts 2の単一ファイルタグを使用してアップロード
- 14. 複数のSQLiteデータベースとFMDBの比較
- 15. 複数のモバイルデバイス用の単一アプリケーションビルド
- 16. iPhone:すべてのアプリケーションのための単一のSQLiteデータベース
- 17. SQLiteの複数の一意の列
- 18. 1つの単一ドメインモデルのMVC複数のデータベース
- 19. 複数のデータベースがAndroidの単一のアプリケーションにあります
- 20. CSVエクスポート:複数のデータベース行の単一の行に
- 21. 複数のファイルをPythonの単一のcsvファイルにループする
- 22. Sqlite複数のテーブルを持つデータベース
- 23. 複数のデータベースにわたるSqliteビュー
- 24. 複数のWebフォームと単一のデータベースに単一の接続を使用する
- 25. 複数のiOSアプリ(単一のデータベースとシングルログオン)
- 26. データベース設計:単一項目の複数の状態
- 27. 複数のデプロイヤー単一のコンテンツ配信データベース(ブローカーDB)
- 28. 複数のSWFファイルを単一のEXEファイルに変換する
- 29. 複数の単一フィールドインデックス対複数フィールドインデックス
- 30. 複数のエントリ単一セル
なぜ必要なのですか?達成できない機能は何ですか?または、単一のDBファイルを使用して発生する可能性のある問題? –
私はOracle DBをSQLiteに置き換える予定です。 1日を通して何千ものトランザクションが発生し、単一のファイルを読み書きすることがプロセスの速度を落とす恐れがあります。 とにかく、SQLiteはそのような大きなデータベースを扱う最良の選択肢ではないようです。 – thameera