準備されたステートメントを使用して、テーブルに値を挿入しようとしましたが、メールに列名がありませんが、プロジェクトのどこにもメールを見逃していないことは明らかでした。
RegistrationActivity.java
public void reg_submit(View v){
DataHelper con=new DataHelper(this);
GetterRegistration model=new GetterRegistration();
SQLiteDatabase db = con.getWritableDatabase();
**String sql="insert into registration(name,email,password)values(?,?,?)";**
SQLiteStatement stmt = db.compileStatement(sql);
stmt.bindString(1, model.getName());
stmt.bindString(2, model.getEmail());
stmt.bindString(3, model.getPassword());
stmt.execute();
db.close();
Intent in = new Intent(this, CocomoActivity.class);
startActivityForResult(in, requestCode);
}
}
DataHelper.java
public class DataHelper extends SQLiteOpenHelper {
public static final String TABLE_COMMENTS = "registration";
public static final String id= "_id";
public static final String name = "name";
**public static final String email = "email";**
public static final String password = "password";
private static final String DATABASE_NAME = "mydb.db";
private static final int DATABASE_VERSION = 1;
// Database creation sql statement
private static final String DATABASE_CREATE = "create table "
+ TABLE_COMMENTS + "( " + id
+ " integer primary key autoincrement, " + name
+ " text not null,"+email
+"text not null," +password
+"text not null)";
これは Logcat のエラー レポートでした
05-11 15:16:25.785: E/AndroidRuntime(704): java.lang.reflect.Method.invoke(Method.java:507) 05-11 15:16:25.785: E/AndroidRuntime(704): at android.view.View$1.onClick(View.java:2139) 05-11 15:16:25.785: E/AndroidRuntime(704): ... 11 05-11 15:16:25.785: E/AndroidRuntime(704 ): 原因: android.database.sqlite.SQLiteException: テーブル登録に email: という名前の列がありません: コンパイル中: 登録に挿入(name,email,password)values(?,?,?) 05-11 15:16:25.785: E/AndroidRuntime(704): android.database.sqlite.SQLiteCompiledSql.native_compile(ネイティブ メソッド) 05-11 15:16:25.785: E/AndroidRuntime(704): android.database で.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:92) 05-11 15:16:25.785: E/AndroidRuntime(704): android.database.sqlite.SQLiteCompiledSql.(SQLiteCompiledSql.java:65) 05-11 15: 16:25.785: E/AndroidRuntime(704): android.database.sqlite.SQLiteProgram.(SQLiteProgram.java:83) 05-11 15:16:25.785: E/AndroidRuntime(704): android.database.sqlite. SQLiteStatement.(SQLiteStatement.java:41) 05-11 15:16:25.785: E/AndroidRuntime(704): android.database.sqlite.SQLiteDatabase.compileStatement(SQLiteDatabase.java:1149) 05-11 15:16:25.785 : E/AndroidRuntime(704): at android.cocomo.login.RegistrationActivity.reg_submit(RegistrationActivity.java:45).
どんな助けでも大歓迎です。前もって感謝します。それでも私はこれを修正しようとしています 誰か提案があれば友達に知らせてください