2011-02-01 13 views
4

SQLite ATTACH DATABASEコマンドを使用して、1つのSQLiteデータベースをBlackBerryに別のデータベースに接続しようとしています。それは、「データベースをアタッチ」コマンドのための文を準備しようとしたときBlackBerry SQLite:SQLiteデータベースを別のものに接続する

Database d1, d2; 
Statement st; 

URI dbURI1 = URI.create("file:///SDCard/Databases/SQLiteExample/MyTestDatabase1.db") 
if (DatabaseFactory.exists(dbURI1)) { 
    d1 = DatabaseFactory.open(dbURI1); 
} else { 
    d1 = DatabaseFactory.create(dbURI1); 
    st = d1.createStatement("CREATE TABLE 'People' ('Name' TEXT, 'Age' INTEGER)"); 

    st.prepare(); 
    st.execute(); 
    st.close(); 
} 

URI dbURI2 = URI.create("file:///SDCard/Databases/SQLiteExample/MyTestDatabase2.db"); 
if (DatabaseFactory.exists(dbURI2)) { 
    d2 = DatabaseFactory.open(dbURI2); 
} else { 
    d2 = DatabaseFactory.create(dbURI2); 
    st = d2.createStatement("CREATE TABLE 'People2' ('Name2' TEXT, 'Age2' INTEGER)"); 

    st.prepare(); 
    st.execute(); 
    st.close(); 
    d2.close(); 
} 

st = d1.createStatement("ATTACH DATABASE '/SDCard/Databases/SQLiteExample/MyTestDatabase2.db' as SECOND_TABLE"); 
st.prepare(); //THROWS AN EXCEPTION "SQL logic error or missing database" 
st.execute(); 
st.close(); 

は、私は例外ATTACH DATABASE /SDCard/Databases/SQLiteExample/MyTestDatabase2.db' as SECOND_TABLE: SQLlogic error or missing database を取得しています。

BlackBerry SQLite APIでATTACH DATABASEコマンドを使用することはできますか?

ありがとうございました。

答えて

2

いいえ、BlackBerry実装のSQLiteはATTACH DATABASEをサポートしていません。確認のために、BlackBerryのドキュメント「Working with SQLite databases」を参照してください。

0

RIMがBlackBerry OS 7.0 APIにAttach/Detach Databaseコマンドを追加しました:
BlackBerry 7.0 API Docs

関連する問題