« 世界陸上 | Main | Lambda Probeでトップページも表示できない »

2007.09.04

SQLiteで複数DBへの同時接続

 SQLiteのデータベースファイルhoge.dbに含まれているテーブルhogehogeと、fuga.dbに含まれているテーブルfugafugaとを結合した結果を得たいような場合。

C:\sqlite_data>sqlite3.exe hoge.db ⇒ まず、hoge.dbに接続する(別にfuga.dbでもいいのですが)

sqlite> attach database "fuga.db" as fuga ⇒ fuga.dbをfugaという名前で接続。
sqlite> select hogehoge.*, fugafuga.* from hogehoge, fuga.fugafuga fugafuga where hogehoge.keyfield=fugafuga.keyfield ⇒ keyfieldという列の値で2つのテーブルを連結。

ってな感じ。

 attachするときに注意しなければならないのは、".db"のような感じでデータベースファイルに"."を含んでいる場合、ファイル名をシングルクォーテーションあるいはダブルクォーテーションで囲まなければならない点。忘れた場合、SQL error: no such column:が発生します。

|

« 世界陸上 | Main | Lambda Probeでトップページも表示できない »

DB」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/3959/16318894

Listed below are links to weblogs that reference SQLiteで複数DBへの同時接続:

« 世界陸上 | Main | Lambda Probeでトップページも表示できない »