好的,所以自從我上一個問題以來,我正在取得進展。我的問題現在更簡單了,或者至少我更清楚地明白我的問題是什麼。在我的AppDelegate我有這個代碼從我的數據庫中讀取數據:SQlite查詢問題,導入多條記錄
-(void) readFromDatabase {
// Setup the database object
sqlite3 *database;
// Init the Array
sections = [[NSMutableArray alloc] init];
// Open the database from the users filessytem
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
// Setup the SQL Statement and compile it for faster access
const char *sqlStatement = "select * from books";
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
// Loop through the results and add them to the feeds array
while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
// Read the data from the result row
NSString *aChapter = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 1)];
NSString *aSection = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 2)];
// Create a new object with the data from the database
Text *text = [[Text alloc] initWithChapter:aChapter verse:aSection];
// Add the object to the Array
[sections addObject:text];
[text release];
}
}
// Release the compiled statement from memory
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
而且,這是工作正常。它正在從books表中讀取來自id列(這是主鍵)後兩列的值。所以在應用程序中,第一個值是填充一個uitableview,並按下該行將您帶到詳細視圖,其中值來自db中的下一列。這一切都很好,但我的問題是關於如何一次導入多個記錄。所以在我的詳細視圖,我需要那裏是一個UITextView,我需要我的SQL查詢以某種方式更改爲類似
"select * from books WHERE column = X"
,其中X是我將適用於批量的記錄我要定數在uitextview中一起顯示。我不能那樣做嗎?從不一定唯一的列或主鍵繪製?那批記錄當然會與uitableviewcell中的原始值相關聯。我知道這是一件非常簡單而容易的事,我無法弄清楚如何去做!所以如果任何人都可以理解這一點,並幫助我,這將是非常感謝!由於
編輯:加法
好了,所以我遇到了,(這可能只是我的數據庫什麼的結構)的問題是,這一個查詢適合所有的辦法只是心不是這樣做對我來說。在我的應用程序中,我需要有1個可用視圖,該視圖用我數據庫中的表中的數據填充,然後再從那裏向下鑽取表示視圖,該視圖代表特定於第一個uitablevew中單擊的部分的章節編號,那也是從數據庫中的另一個表格,最後是一個在uitextview中同時顯示多個記錄的詳細視圖,所有這些處理在第二個uitableview中選擇的章節,再次從數據庫中的另一個表格處理。所以我的問題是,我不喜歡這種方法,我已經讓自己進入我在哪裏做一個查詢說「選擇*,只是得到你找到的下兩個值」有點兒。我需要能夠使我的查詢更具體,而不是隻在一個表中,但多個。這是否意味着我可以設置多個const char *sqlStatement =
聲明並將它們專門鏈接到我需要的所需輸出?如果你可以展示這些作品是如何融合在一起的,那將非常感激。由於
嘿扎克,謝謝你的幫助。我認爲這個查詢會起作用,現在它只是一個適合的問題。你介意我是否問了幾個問題來解決我的問題?我在上面添加更新以顯示我在哪裏。非常感謝 – Steve 2010-03-02 14:14:41