2016-07-12 8 views
0

私は最適化したい1.24GBのSqliteデータベースを持っています 私はデータベースを作ってくれません。アプリケーションには私に与えてください データベースには各列にいくつかのインデックスがありますmake高速検索のためにのみ 何contrainsがないがdataseは約400 MBのSqliteデータベース分割テーブルと検索インデックスの2つのファイル

私はindexsに区切りファイル の表を配布したいと知らないでインデックスせずに、1つのユニークなインデックスEJ

CREATE INDEX "numberF" 
ON "fix" ("number" ASC); 
CREATE INDEX "addressM" 
ON "movil" ("address" ASC); 

をexeptもしsqliteにポーズがあるなら

スキーマ:

CREATE TABLE "movil" (
"number" TEXT NOT NULL, 
"name" TEXT, 
"identification" TEXT, 
"address" TEXT, 
"province" INTEGER, 
PRIMARY KEY ("number" ASC) 
); 

CREATE INDEX "addressM" 
ON "movil" ("address" ASC); 

CREATE INDEX "identificationM" 
ON "movil" ("identification" ASC); 

CREATE INDEX "nameM" 
ON "movil" ("name" ASC); 

CREATE INDEX "provinceM" 
ON "movil" ("province" ASC); 

CREATE UNIQUE INDEX "numberM" 
ON "movil" ("number" ASC); 
+0

これは唯一のテーブルですか? – MPelletier

+0

いいえ、この表でやっていますが、私は持っています –

答えて

0

あなたは、彼らが同じファイルに存在する必要があり、そのテーブルからインデックスを分離することはできません。しかし、各テーブルに別々のファイルを持つことができます。あなたはそれで終わったら次に

ATTACH 'c:\data\movil.db' AS movil_db; 

を:あなたはこのようATTACH他人その後、1つのデータベースファイルに接続することができます

DETACH movil_db; 

をちょうどあなたが同時にアタッチされたデータベースの制限を壊さないように注意してください。それについては上のリンクを参照してください。

関連する問題