vendredi 23 janvier 2015

no such column: useradd (code 1): , while compiling: SELECT uid,username,usertype,sex,usercompany,usermail,usercontact,useradd FROM User WHERE uid=?

I don't know why this error is appearing.. android.database.sqlite.SQLiteException: no such column: useradd (code 1): , while compiling: SELECT uid,username,usertype,sex,usercompany,usermail,usercontact,useradd FROM User WHERE uid=?


this is my code for crud



public class UserCrud {
private DBHelper dbHelper;

public UserCrud(Context context){
dbHelper = new DBHelper(context);
}

public int insert(User user){
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(User.KEY_ID, user.user_ID);
values.put(User.KEY_username, user.user_name);
values.put(User.KEY_usertype, user.usertype);
values.put(User.KEY_sex, user.sex);
values.put(User.KEY_usercompany, user.usercompany);
values.put(User.KEY_usermail, user.usermail);
values.put(User.KEY_usercontact, user.usercontact);
values.put(User.KEY_useradd, user.useradd);

long user_Id = db.insert(Project.TABLE, null, values);
db.close();

return (int) user_Id;

}

public void delete(int user_Id) {

SQLiteDatabase db = dbHelper.getWritableDatabase();
db.delete(Project.TABLE, Project.KEY_ID + "=?", new String[]{ String.valueOf(user_Id) });
db.close();
}

public void update(User user){
SQLiteDatabase db = dbHelper.getWritableDatabase();
ContentValues values = new ContentValues();

values.put(User.KEY_ID, user.user_ID);
values.put(User.KEY_username, user.user_name);
values.put(User.KEY_usertype, user.usertype);
values.put(User.KEY_sex, user.sex);
values.put(User.KEY_usercompany, user.usercompany);
values.put(User.KEY_usermail, user.usermail);
values.put(User.KEY_usercontact, user.usercontact);
values.put(User.KEY_useradd, user.useradd);

db.update(User.TABLE, values, User.KEY_ID + "= ?", new String[]{String.valueOf(user.user_ID)});
db.close();
}

public ArrayList<HashMap<String, String>> getUserList (){
SQLiteDatabase db = dbHelper.getReadableDatabase();

String selectQuery = "SELECT " +
User.KEY_ID + "," +
User.KEY_username + "," +
User.KEY_usertype + "," +
User.KEY_sex + "," +
User.KEY_usercompany + "," +
User.KEY_usermail + "," +
User.KEY_usercontact + "," +
User.KEY_useradd +
" FROM " + User.TABLE;

ArrayList<HashMap<String, String>> userList = new ArrayList<HashMap<String, String>>();

Cursor cursor= db.rawQuery(selectQuery, null);

if (cursor.moveToFirst()){
do {
HashMap<String , String > user = new HashMap<String, String >();
user.put("uid", cursor.getString(cursor.getColumnIndex(User.KEY_ID)));
user.put("username", cursor.getString(cursor.getColumnIndex(User.KEY_username)));
userList.add(user);

} while (cursor.moveToNext());
} cursor.close();
db.close();
return userList;
}

public User getUserById(int uId){
SQLiteDatabase db = dbHelper.getReadableDatabase();

String selectQuery = "SELECT " +
User.KEY_ID + "," +
User.KEY_username + "," +
User.KEY_usertype + "," +
User.KEY_sex + "," +
User.KEY_usercompany + "," +
User.KEY_usermail + "," +
User.KEY_usercontact + "," +
User.KEY_useradd +
" FROM " + User.TABLE
+ " WHERE " +
User.KEY_ID + "=?";

int ictr =0;
User user = new User();

Cursor cursor = db.rawQuery(selectQuery, new String[]{ String.valueOf(uId)});

if (cursor.moveToFirst()){
do{
user.user_ID=cursor.getInt(cursor.getColumnIndex(User.KEY_ID));
user.user_name=cursor.getString(cursor.getColumnIndex(User.KEY_username));
user.usertype=cursor.getString(cursor.getColumnIndex(User.KEY_usertype));
user.sex=cursor.getString(cursor.getColumnIndex(User.KEY_sex));
user.usercompany=cursor.getString(cursor.getColumnIndex(User.KEY_usercompany));
user.usermail=cursor.getString(cursor.getColumnIndex(User.KEY_usermail));
user.usercontact=cursor.getInt(cursor.getColumnIndex(User.KEY_usercontact));
user.useradd=cursor.getString(cursor.getColumnIndex(User.KEY_useradd));
}while (cursor.moveToNext());
}cursor.close();
db.close();
return user;

}

}


and this is for the table of User



public class User {
public static final String TABLE = "User";


// Labels Table Columns names
public static final String KEY_ID = "uid";
public static final String KEY_username = "username";
public static final String KEY_usertype = "usertype";
public static final String KEY_sex = "sex";
public static final String KEY_usercompany = "usercompany";
public static final String KEY_usermail = "usermail";
public static final String KEY_usercontact = "usercontact";
public static final String KEY_useradd = "useradd";


// property help us to keep dataS
public int user_ID;
public String user_name;
public String usertype;
public String sex;
public String usercompany;
public String usermail;
public int usercontact ;
public String useradd;

}


and this is how i created the table for user on my DBHelper extends SQLiteOpenHelper



String CREATE_TABLE_USER = "CREATE TABLE " + User.TABLE + "("
+ User.KEY_ID + " INTEGER PRIMARY KEY AUTOINCREMENT,"
+ User.KEY_username + " TEXT,"
+ User.KEY_usertype + " TEXT,"
+ User.KEY_sex + " TEXT,"
+ User.KEY_usercompany + " TEXT,"
+ User.KEY_usermail + " TEXT,"
+ User.KEY_usercontact + " INTEGER,"
+ User.KEY_useradd + " TEXT" + ");";

db.execSQL(CREATE_TABLE_USER);

Aucun commentaire:

Enregistrer un commentaire