Как соединить две таблицы, чтобы вернуть заметки пользователю?
Это мой первый проект в android, и я боролся за запрос и соединение двух таблиц, и я хочу получить информацию о пользователе вместе с заметкой..
вот код..
public class NotebookDbAdapter { private static final String DATABASE_NAME = "notebook.db"; private static final int DATABASE_VERSION = 3; public static final String USER_TABLE = "users"; public static final String COLUMN_ID_USER = "_id"; public static final String COLUMN_EMAIL = "email"; public static final String COLUMN_PASS = "password"; public static final String NOTE_TABLE = "note"; public static final String COLUMN_ID = "_id"; public static final String COLUMN_TITLE = "title"; public static final String COLUMN_MESSAGE = "message"; public static final String COLUMN_CATEGORY = "category"; public static final String COLUMN_DATE = "date"; private String[] allColumns = {COLUMN_ID, COLUMN_TITLE, COLUMN_MESSAGE, COLUMN_CATEGORY, COLUMN_DATE}; public static final String CREATE_TABLE_NOTE = " create table " + NOTE_TABLE + " ( " + COLUMN_ID + " integer primary key autoincrement, " + COLUMN_TITLE + " text not null, " + COLUMN_MESSAGE + " text not null, " + COLUMN_CATEGORY + " text not null, " + COLUMN_DATE + ");"; public static final String CREATE_TABLE_USERS = " create table " + USER_TABLE + " ( " + COLUMN_ID_USER + " integer primary key autoincrement, " + COLUMN_EMAIL + " TEXT , " + COLUMN_PASS + " TEXT );"; private SQLiteDatabase sqlDB; private Context context; private NotebookDbHelper notebookDbHelper; public NotebookDbAdapter(Context ctx) { context = ctx; } public NotebookDbAdapter open() throws android.database.SQLException { notebookDbHelper = new NotebookDbHelper(context); sqlDB = notebookDbHelper.getWritableDatabase(); return this; } public void close() { notebookDbHelper.close(); } public Note createNote(String title, String message, Note.Category category) { ContentValues values = new ContentValues(); values.put(COLUMN_TITLE, title); values.put(COLUMN_MESSAGE, message); values.put(COLUMN_CATEGORY, category.name()); values.put(COLUMN_DATE, Calendar.getInstance().getTimeInMillis() + ""); long insertId = sqlDB.insert(NOTE_TABLE, null, values); Cursor cursor = sqlDB.query(NOTE_TABLE, allColumns, COLUMN_ID + " = " + insertId, null, null, null, null); cursor.moveToFirst(); Note newNote = cursorToNote(cursor); cursor.close(); return newNote; } public long deleteNote(long idToDelete) { return sqlDB.delete(NOTE_TABLE, COLUMN_ID + " = " + idToDelete, null); } public long updateNote(long idToUpdate, String newTitle, String newMessage, Note.Category newCategory) { ContentValues values = new ContentValues(); values.put(COLUMN_TITLE, newTitle); values.put(COLUMN_MESSAGE, newMessage); values.put(COLUMN_CATEGORY, newCategory.name()); values.put(COLUMN_DATE, Calendar.getInstance().getTimeInMillis() + ""); return sqlDB.update(NOTE_TABLE, values, COLUMN_ID + " = " + idToUpdate, null); }
Что я уже пробовал:
Я пробовал это сделать, но все равно ничего не получал и получал ошибки... может ли кто-нибудь указать правильный путь для успеха моего проекта? Спасибо!