isimli bir sütuna sahip değil. Ben, bir ORM (GreenDao) kullanarak kullanıyorum.Ama benim app çalıştırdığınızda, günlük kedi hiçbir Tareas adında bir tablo olmadığını gösteriyor. Bunu anlamadım çünkü veritabanımı oluşturduğumda, Tareas Tablosunda Tipo adında bir sütun var. 51:GreenDao- android.database.sqlite.SQLiteException: tablo TAREAS,
03-30 07 32,758 e/AndroidRuntime tipiwiny.greendao 29.389-29.389 /: önemli özel durum: Ana Süreci: tipiwiny.greendao PID: 29.389 android.database.sqlite.SQLiteException: Tablo TAREAS bir sahiptir sütun
TIPO adında(kod 1): derleme yaparken,:? INSERT INTO TAREAS ('_ID', 'Duración', 'TIPO', 'Descripción', 'usuario', 'realizada') DEĞERLER (?,?,?,?,?) android.database.sqlite.SQLiteConnection.acquirePreparedStatement (SQLiteConnection.java:889 de android.database.sqlite.SQLiteConnection.nativePrepareStatement (Ana Yöntemi) at) 0.123.516 android.database.sqlite.SQLiteSession.prepare (SQLiteSession.java:588) en android.database.sqlite.SQLiteConnection.prepare (SQLiteConnection.java:500) android.database.sqlite.SQLiteProgram de de. (SQLiteProgram .Java: de 58) android.database.sqlite.SQLiteStatement de.greenrobot.dao de android.database.sqlite.SQLiteDatabase.compileStatement (SQLiteDatabase.java:994 de (SQLiteStatement.java:31) ) . .internal.TableStatements.getInsertStatement (TableStatements.java:48) de.greenrobot.dao.AbstractD adresinde tipwiny.greendao.CrearTarea.añadirTarea (CrearTarea.java:60) at tipwiny.greendao.CrearTarea.access $ 000 (CrearTarea.java:18) at typewiny.greendao.CrearTarea adresinde yer alan ao.insert (Abstracted.java:293) Android.view.View.View.performClick'te (View.java:4756) adresindeki android.view.View $ 'daki (CrearTarea.java:42) , $ 1.Click (http://support.gova:19749) android.os. Android.app.ActivityThread de android.os.Looper.loop (Looper.java:135) adresinden Handler.handleCallback (Handler.java:739) , android.os.Handler.dispatchMessage (Handler.java:95) . ana (ActivityThread.java:5221) Java.lang.reflect.Method.invoke adresindeki (Yerel Yöntem) java.lang.reflect.Method.invoke (Yöntem.java:372) atcom.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit. java: 899) com.android.internal.os.ZygoteInit.main (ZygoteInit.java:694 at)
Benim veritabanı nasıl tanımlandığını: Lütfen oluşturmak için bu kodu çalıştırmak
private static void createDatabase(Schema schema) {
Entity usuario = schema.addEntity("Usuario");
usuario.addIdProperty();
usuario.addStringProperty("nombre").notNull();
usuario.addStringProperty("apellidos").notNull();
usuario.addStringProperty("password").notNull();
usuario.addStringProperty("roll").notNull();
Entity habilidad = schema.addEntity("Habilidad");
habilidad.addIdProperty();
Property usuarioIdProperty = habilidad.addLongProperty("usuarioId").notNull().getProperty();
habilidad.addToOne(usuario, usuarioIdProperty);
habilidad.addIntProperty("tipo").notNull();
Entity tarea=schema.addEntity("Tareas");
tarea.addIdProperty();
tarea.addIntProperty("duracion").notNull();
tarea.addIntProperty("tipo").notNull();
tarea.addStringProperty("descripcion").notNull();
tarea.addStringProperty("usuario");
tarea.addBooleanProperty("realizada");
}
tabloları, TareasDao sınıfı oluşturuldu ve createTable yöntemi:
/** Creates the underlying database table. */
public static void createTable(SQLiteDatabase db, boolean ifNotExists) {
String constraint = ifNotExists? "IF NOT EXISTS ": "";
db.execSQL("CREATE TABLE " + constraint + "'TAREAS' (" + //
"'_id' INTEGER PRIMARY KEY ," + // 0: id
"'DURACION' INTEGER NOT NULL ," + // 1: duracion
"'TIPO' INTEGER NOT NULL ," + // 2: tipo
"'DESCRIPCION' TEXT NOT NULL ," + // 3: descripcion
"'USUARIO' TEXT," + // 4: usuario
"'REALIZADA' INTEGER);"); // 5: realizada
}
sayesinde ihtiyaç varsa bana bildirin! Sorunumu çözdüm. Uygulamayı telefonumdan kaldırdım ve Android Device Monitor'den veritabanını kaldırdıktan sonra. Son olarak, – tipiwiny
veritabanını oluşturmak için geri döndüm Lütfen çözümünüzü paylaşın! Bunu nasıl yaptın? –
Üzgünüm, sadece yorumumu düzenledim. – tipiwiny