2012-05-06 7 views
0

私のiOSプログラムがサーバー内の[A.sqlite3]ファイルをダウンロードします。私はdbテーブルを同じデータベースに入れたいです。どうやって?

私のiOSのは、私は地元のiOSにb.sqlite3の表とA.sqlite3のテーブルに参加するローカル

ですでに[b.sqlite3]ファイルを持っています。

しかし、テーブルのデータベースが異なるため、テーブルの結合に問題があります。

テーブルを同じデータベースに配置するにはどうすればよいですか?

+1

おそらく重複している[この質問](http://stackoverflow.com/questions/6495204/joins-across-multiple-sqlite-db-files)その1つはAndroidですが、SQLite APIは同じです。 – theory

答えて

0

構文sqlite ATTACH構文を使用できます。データベースB.sqlite3にデータベースA.sqlite3のテーブルAとテーブルBを持っていたと仮定すると、コマンドラインから、手順は次のようになります。

$ sqlite3 A.sqlite3 
sqlite> ATTACH 'B.sqlite3' AS dbB; 
sqlite> SELECT a.*,dbB.b.* FROM a,dbB.b WHERE (a.id = dbB.b.id); 

は、追加のデータベース・ファイルにどのプレフィックスを与えるATTACH SQL文で使用することができます。

iPhoneアプリケーションでは以前と同じようにA.sqlite3データベースを開き、他のsqlコマンドを渡すようにsql ATTACHコマンドをsqliteライブラリに渡して、完全なパス名をアタッチ。

関連する問題