使用記事本教程並提出問題。當它使用字段rowid,title和body構建數據庫時 - 所有這三個都是私有靜態最終字符串。但是當像fetchnote()這樣的方法運行時,它使用一個很長的id來獲取音符。如果rowid是一個字符串,該方法如何獲得該ID?我想稍微修改一下這個教程並讓一個活動調用一個listactivity。列表活動將顯示數據庫中的所有內容,然後,當用戶單擊某個項目時,我想將該項目複製到新數據庫中,並將行標識發送回調用活動。但我不知道如何讓它將條目複製到新數據庫中,因爲本教程使用行ID進行調整,並且我的新數據庫將爲空。那有意義嗎?我對此很陌生。關於記事本教程的問題
0
A
回答
1
我覺得public static final Strings
你談論這些是:
public class NotesDbAdapter {
public static final String KEY_TITLE = "title";
public static final String KEY_BODY = "body";
public static final String KEY_ROWID = "_id";
...
}
如果是這樣,那麼這些列名。列名稱是字符串,而不是這些列中的值。如果你看得更深一點,你會看到:
private static final String DATABASE_CREATE =
"create table notes (_id integer primary key autoincrement, "
+ "title text not null, body text not null);";
這是如何創建數據庫。正如你所看到的那樣,「_id」列的類型是「整數」,我猜是和long一樣的(或至少兼容)。
(編輯)
下應使您能夠將附註內容複製出來的原始表並將其插入到另一個。
mCursor = mDbHelper.fetchNote(rowId);
title = mCursor.getString(mCursor.getColumnIndex(NotesDbAdapter.KEY_TITLE));
body = mCursor.getString(mCursor.getColumnIndex(NotesDbAdapter.KEY_BODY));
// I'm using mDbHelper2 here to indicate that you're inserting it into
// a different table.
mDbHelper2.createNote(title, body);
// And if you want to remove it from the original table as well:
mDbHelper.deleteNote(rowId);
// I'm guessing you'd have to run this to square up all the rows in the display:
fillData();
0
您可以使用與第一個列相同的列來設置新的數據庫,但在id列上沒有自動遞增參數。然後,您只需添加一個新的條目,並使用與另一條相同的詳細信息。
+0
因此,如果我建立了一個新的數據庫,我會設置它與原始相同的列減去rowid。那麼我將如何處理數據庫呢? 現在,ListActivity打開並顯示數據庫條目。然後我有一個OnListItemClick方法,它接受被單擊的條目的行ID - >然後我想將該條目複製到新的數據庫中(通過記事本CreateNote方法修改以適合我的需要並減去rowid?)我不是確定如何去設置。 – Will 2010-08-31 18:27:41
相關問題
- 1. 記事本教程
- 2. 關於Android教程的問題
- 3. 問題上的記事本教程:網頁
- 4. Android記事本教程 - onListItemClick
- 5. Android SQL - 記事本教程
- 6. 關於在Android中擴展記事本教程的一個非常開放的,n00b-esque的問題
- 7. 關於Dojo事件的教程
- 8. 關於教義的新手問題
- 9. 關於Clojure與狀態相關問題的書籍/教程
- 10. 記事本++的問題
- 11. 試圖Android的記事本教程 - 練習1 - 更多的問題
- 12. iPhone原始記事本教程?
- 13. 記事本教程:添加baseadapter
- 14. 關於Android教程「hello world」的疑問
- 15. 關於來自太陽的死鎖教程的問題
- 16. 記事本++格式問題
- 17. RegEx問題與記事本+
- 18. 關於socket.io教程(第1部分)的許多問題?
- 19. Noob關於「Hello World」Android教程的問題
- 20. 有關XPath教程問題由w3school
- 21. 關於ASP.NET的WebSockets教程
- 22. 關於XMLObject的教程
- 23. 關於WinAPI unicode的教程?
- 24. 關於PyObjC的教程
- 25. 關於TMemIni的教程
- 26. 關於XMPP的好教程?
- 27. 關於OpenMap的教程
- 28. Android dev記事本教程練習,煩人的空筆記
- 29. 關於線程的問題
- 30. 關於程序的問題
那麼,我將如何去獲取當前的數據庫條目並將其複製到新的數據庫中。我可以通過點擊的rowId獲取當前條目。我如何複製條目並將rowid更新爲它應該包含的內容,而不是被點擊的原始條目的rowid - 這就是我被卡住的地方。我無法讓副本工作,然後將新的數據庫rowid傳遞迴調用活動。 – Will 2010-08-31 20:12:13
NotesDbAdapter類具有一個fetchNote()函數,該函數接受一個rowId並返回一個指針,該指針指向數據庫中具有該rowId的條目。然後,您可以獲取數據字段(在本例中爲標題和正文),並使用相同的值在新表中創建一個新條目。 – onlynone 2010-09-03 17:31:49