Привет, я создаю регистрационную форму, в которой мне нужно хранить все данные в sqlite. Я использовал this в качестве ссылки. Когда я вставить данные в SQLite Я получаю эту ошибку в LogCatОшибка при вводе данных в sqlite на android
01-24 12:51:43.825: E/SQLiteLog(23749): (1) table register has no column named last_name
01-24 12:51:43.855: E/SQLiteDatabase(23749): Error inserting date_of_birth=24/Jan/2014 last_name=V gender=Female midle_name=Fg first_name=B marital_stat=Single Password=gybyh
01-24 12:51:43.855: E/SQLiteDatabase(23749): android.database.sqlite.SQLiteException: table register has no column named last_name (code 1): , while compiling: INSERT INTO register(date_of_birth,last_name,gender,midle_name,first_name,marital_stat,Password) VALUES (?,?,?,?,?,?,?)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1013)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:624)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteStatement.<init>(SQLiteStatement.java:31)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1467)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1339)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at com.DatabaseHandler.addRegister(DatabaseHandler.java:91)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at com.Signup_patient$4.onClick(Signup_patient.java:148)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.view.View.performClick(View.java:4191)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.view.View$PerformClick.run(View.java:17229)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.os.Handler.handleCallback(Handler.java:615)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.os.Handler.dispatchMessage(Handler.java:92)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.os.Looper.loop(Looper.java:137)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at android.app.ActivityThread.main(ActivityThread.java:4960)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at java.lang.reflect.Method.invokeNative(Native Method)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at java.lang.reflect.Method.invoke(Method.java:511)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
01-24 12:51:43.855: E/SQLiteDatabase(23749): at dalvik.system.NativeStart.main(Native Method)
этого это кодирование я использую для вставки данных в базу данных
sFirstname = Signup_patient_FirstName.getText().toString();
sMidlename = Signup_patient_MidleName.getText().toString();
sLastname = Signup_patient_LastName.getText().toString();
sDateofbirth = Signup_patient_DateofBirth.getText().toString();
sGender = Signup_patient_txtGender.getText().toString();
sMaritalStatus = Signup_patient_txtMarital_Status.getText().toString();
sEmail = Signup_patient_Emailid.getText().toString();
sPassword = Signup_patient_Password.getText().toString();
//adding a database
DatabaseHandler db = new DatabaseHandler(Signup_patient.this);
db.addRegister(new Register_values(sFirstname, sMidlename,
sLastname, sDateofbirth, sGender, sMaritalStatus,
sEmail, sPassword));
и это моя база данных класс
public class DatabaseHandler extends SQLiteOpenHelper {
// All Static variables
// Database Version
private static final int DATABASE_VERSION = 1;
// Database Name
private static final String DATABASE_NAME = "registerManager";
// Register table name
private static final String TABLE_REGISTER = "register";
// Register Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_FIRST_NAME = "first_name";
private static final String KEY_MIDLE_NAME = "midle_name";
private static final String KEY_LAST_NAME = "last_name";
private static final String KEY_DOB = "date_of_birth";
private static final String KEY_GENDER = "gender";
private static final String KEY_MARITAL_STAT = "marital_stat";
private static final String KEY_EMAIL = "email";
private static final String KEY_PASSWORD = "Password";
public DatabaseHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_REGISTER_TABLE = "CREATE TABLE " + TABLE_REGISTER + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_FIRST_NAME + " TEXT,"
+ KEY_MIDLE_NAME + " TEXT" + KEY_LAST_NAME + " TEXT," + KEY_DOB
+ " TEXT" + KEY_GENDER + " TEXT," + KEY_MARITAL_STAT + " TEXT"
+ KEY_EMAIL + " TEXT," + KEY_PASSWORD + " TEXT" + ")";
Log.i("CREATE_REGISTER_TABLE", CREATE_REGISTER_TABLE);
db.execSQL(CREATE_REGISTER_TABLE);
}
// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_REGISTER);
// Create tables again
onCreate(db);
}
/**
* All CRUD(Create, Read, Update, Delete) Operations
*/
// Adding new register
void addRegister(Register_values registerdata) {
SQLiteDatabase db = this.getWritableDatabase();
Log.i(KEY_FIRST_NAME, registerdata.getFirst_name());
Log.i(KEY_MIDLE_NAME, registerdata.getMidle_name());
Log.i(KEY_LAST_NAME, registerdata.getLast_name());
Log.i(KEY_DOB, registerdata.getDate_of_birth());
Log.i(KEY_GENDER, registerdata.getGender());
Log.i(KEY_MARITAL_STAT, registerdata.getMarital_stat());
// Log.i(KEY_EMAIL, registerdata.getEmail());
Log.i(KEY_PASSWORD, registerdata.getPassword());
ContentValues values = new ContentValues();
values.put(KEY_FIRST_NAME, registerdata.getFirst_name());
values.put(KEY_MIDLE_NAME, registerdata.getMidle_name());
values.put(KEY_LAST_NAME, registerdata.getLast_name());
values.put(KEY_DOB, registerdata.getDate_of_birth());
values.put(KEY_GENDER, registerdata.getGender());
values.put(KEY_MARITAL_STAT, registerdata.getMarital_stat());
// values.put(KEY_EMAIL, registerdata.getEmail());
values.put(KEY_PASSWORD, registerdata.getPassword());
// Inserting Row
db.insert(TABLE_REGISTER, null, values);
db.close(); // Closing database connection
}
}
и этот класс в Register_values
public class Register_values {
// private variables
int ID;
String First_name;
String Midle_name;
String Last_name;
String Date_of_birth;
String Gender;
String Marital_stat;
String Email;
String Password;
public Register_values() {
}
public Register_values(int _id, String _first_name, String _midle_name,
String _last_name, String _date_of_birth, String _gender,
String _marital_stat, String _email, String _password) {
this.ID = _id;
this.First_name = _first_name;
this.Midle_name = _midle_name;
this.Last_name = _last_name;
this.Date_of_birth = _date_of_birth;
this.Gender = _gender;
this.Marital_stat = _marital_stat;
this.Email = _email;
this.Password = _password;
}
public Register_values(String _first_name, String _midle_name,
String _last_name, String _date_of_birth, String _gender,
String _marital_stat, String _email, String _password) {
this.First_name = _first_name;
this.Midle_name = _midle_name;
this.Last_name = _last_name;
this.Date_of_birth = _date_of_birth;
this.Gender = _gender;
this.Marital_stat = _marital_stat;
this.Email = _email;
this.Password = _password;
}
public int getID() {
return this.ID;
}
public void setID(int id) {
this.ID = id;
}
public String getFirst_name() {
return First_name;
}
public void setFirst_name(String first_name) {
this.First_name = first_name;
}
public String getMidle_name() {
return this.Midle_name;
}
public void setMidle_name(String midle_name) {
this.Midle_name = midle_name;
}
public String getLast_name() {
return this.Last_name;
}
public void setLast_name(String last_name) {
this.Last_name = last_name;
}
public String getDate_of_birth() {
return this.Date_of_birth;
}
public void setDate_of_birth(String date_of_birth) {
this.Date_of_birth = date_of_birth;
}
public String getGender() {
return this.Gender;
}
public void setGender(String gender) {
this.Gender = gender;
}
public String getMarital_stat() {
return this.Marital_stat;
}
public void setMarital_stat(String marital_stat) {
this.Marital_stat = marital_stat;
}
public String getEmail() {
return this.Email;
}
public void setEmail(String email) {
this.Email = email;
}
public String getPassword() {
return this.Password;
}
public void setPassword(String password) {
this.Password = password;
}
}
благодаря человеку она работает – Jagan
после того, как я очистить проект и очистил погоню памяти он работал – Jagan