Android-Spalte '_id' existiert nicht?

Ich habe Probleme mit etwas, das im Editor-Beispiel funktioniert. Hier ist der Code aus dem NotepadCodeLab / Notepadv1Solution:

String[] from = new String[] { NotesDbAdapter.KEY_TITLE };
int[] to = new int[] { R.id.text1 };

SimpleCursorAdapter notes = new SimpleCursorAdapter(this,
R.layout.notes_row, c, from, to);

Dieser Code scheint gut zu funktionieren. Aber nur um klar zu sein, habe ich das ADB Utility und SQLite 3 ausführen. Ich habe das Schema wie folgt überprüft:

sqlite> .schema

CREATE TABLE android_metadata (locale TEXT);
CREATE TABLE notes (_id integer primary key autoincrement, title text
not null, body text not null);

lles scheint mir gut zu sei

Jetzt zu meiner Bewerbung, die meines Erachtens mit ein paar geringfügigen Änderungen im Grunde die gleiche ist. Ich habe meinen Code vereinfacht und vereinfacht, aber das Problem besteht weiterhin.

String[] from = new String[] { "x" };
int[] to = new int[] { R.id.x };

SimpleCursorAdapter adapter = null;
try
{
    adapter = new SimpleCursorAdapter(this, R.layout.circle_row, cursor, from, to);
}
catch (RuntimeException e)
{
    Log.e("Circle", e.toString(), e);
}

Wenn ich meine Anwendung ausführe, erhalte ich eine RuntimeException und die folgenden Ausdrucke in LogCat von meinemLog.e() Erklärung

LogCat Nachricht:

java.lang.IllegalArgumentException: Spalte '_id' existiert nicht

So, zurück zu SQLite 3, um zu sehen, was an meinem Schema anders ist:

sqlite> .schema CREATE TABLE android_metadata (Gebietsschema TEXT); CREATE TABLE Kreise (_id Integer-Primärschlüssel-Autoincrement, Sequence Integer, Radius Real, X Real, Y Real);

Ich verstehe nicht, wie mir die '_id' fehlt.

Was habe ich falsch gemacht

Ein Unterschied zwischen meiner Anwendung und dem Notepad-Beispiel besteht darin, dass ich meine Anwendung zunächst mit dem Eclipse-Assistenten von Grund auf neu erstellt habe, während die Beispielanwendung bereits zusammengestellt wurde. Gibt es eine Art von Umgebungsänderung, die ich vornehmen muss, damit eine neue Anwendung eine SQLite-Datenbank verwendet?

Antworten auf die Frage(16)

Ihre Antwort auf die Frage