2011-04-14 57 views
3

我有一個數據庫模式,在文件1.sqlitedb到n.sqlitedb中是相同的。我使用視圖來「合併」所有數據庫。我的問題是:當我插入到視圖中,數據插入到哪個數據庫中?有沒有什麼方法可以控制哪些獲取數據?我需要分割數據的方式取決於數據本身。基本上,我使用字段的第一個字母來確定它插入的文件。任何幫助,將不勝感激。謝謝!如何插入sqlite視圖工作?

+0

爲什麼要將數據分成多個文件?在sqlite中沒有對文件大小的實際限制。 – 2011-04-14 09:57:16

+0

我不認爲你可以。嘗試使用表達式代替要插入的數據庫名稱,但我擔心它會出現語法錯誤。 – 2011-04-14 09:57:44

+0

這些字母是驅動器號。數據庫是獨立的可移動數據庫的組合,因此文件位於不同的驅動器上 – chacham15 2011-04-14 10:19:02

回答

0

我不確定我是否理解你的問題,但你有沒有使用ATTACH DATABASE命令?它允許您將單獨的數據庫文件連接到單個數據庫。您可以通過在數據庫名稱前面插入(INSERT INTO db1.Table)來將INSERT控制到特定數據庫中。

http://www.sqlite.org/lang_attach.html

0

我們需要在視圖(VIEW_NAME)上實現而不是觸發器。所以當插入/更新發生視圖。我們可以將更新底層對象(TABLE_NAME)插入到觸發器主體中。 (NEW:COLOR1,COLOR2)的值插入到TABLE_NAME(col1,col2)值(:new.col1,:new.col2)中;然後在CREATE_NAME中插入TABLE_NAME(col1,col2) END;