如何在android中使用sqlite显示和修改用户详细信息 [英] How do I display and modify user details using sqlite in android

查看:110
本文介绍了如何在android中使用sqlite显示和修改用户详细信息的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经为显示方法和修改方法编码了,但它没有显示和修改,具体取决于从微调器中选择的用户名



我尝试过:



公开列表< SuperUserDetails> DisplayUserDetails(String accountName)
{
List< SuperUserDetails> userDetailList = new ArrayList<>();
sqLiteDatabase = this.getReadableDatabase();
字符串查询=SELECT+ USER_NAME +,+ USER_ADDRESS +,+ USER_DOB +,+ USER_PHONE +,+ USER_EMAIL +,+ USER_PASS +,+ USER_PASS +FROM+ USER_TABLE_NAME +WHERE + USER_UNAME +='+ accountName +';
Cursor cursor = sqLiteDatabase.rawQuery(query,null);
if(cursor.moveToFirst())
{
do
{
SuperUserDetails userDetails = new SuperUserDetails();
userDetails.setName(cursor.getString(0));
userDetails.setAddress(cursor.getString(1));
userDetails.setDob(cursor.getString(2));
userDetails.setPhone(cursor.getString(3));
userDetails.setEmail(cursor.getString(4));
userDetails.setPass(cursor.getString(5));
userDetails.setPass(cursor.getString(6));
userDetailList.add(userDetails);
} while(cursor.moveToNext());
}
cursor.close();
sqLiteDatabase.close();
返回userDetailList;
}


public boolean modifyUserDetails(SuperUserDetails modify){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
String query =select * from+ USER_TABLE_NAME;
Cursor cursor = db.rawQuery(query,null);
int count = cursor.getCount();
// values.put(USER_ID,count);
values.put(USER_NAME,modify.getName());
values.put(USER_ADDRESS,modify.getAddress());
values.put(USER_DOB,modify.getDob());
values.put(USER_PHONE,modify.getPhone());
values.put(USER_EMAIL,modify.getEmail());
// values.put(USER_UNAME,modify.getUname());
values.put(USER_PASS,modify.getPass());
//values.put(USER_TYPE,modit.getUtype());
/ * Cursor cursor1 = db.query(USER_TABLE_NAME,new String [] {USER_NAME,USER_ADDRESS,USER_DOB,USER_PHONE,USER_EMAIL,USER_PASS,USER_PASS},null,null,null,null,null,null,null);
if(cursor1!= null){
cursor.moveToLast();
}
返回cursor1;
} * /

/*db.query(USER_TABLE_NAME,null,USER_UNAME =?,new String [] {USER_UNAME},null,null,null,null,null ,null,null); * /
long modifyresult = db.update(USER_TABLE_NAME,values,USER_UNAME +=?,new String [] {String.valueOf(modify.getUname())});
if(modifyresult == -1)
{
return true;
}
其他
{
返回false;
}
}

解决方案

您好,

请点击以下链接: -

Android SQLite数据库教程 - CRUD操作 [ ^ ]

Android SQLite数据库教程 [ ^ ]

使用ActiveAndroid库的Android中的SQLite CRUD示例 [ ^ ]



我希望这会对你有所帮助...

I have coded for display method and modify method but it is not displaying and modify depending on username selected from spinner

What I have tried:

public List<SuperUserDetails> DisplayUserDetails(String accountName)
    {
        List<SuperUserDetails> userDetailList = new ArrayList<>();
        sqLiteDatabase = this.getReadableDatabase();
        String query = "SELECT "+USER_NAME+", "+USER_ADDRESS+", "+USER_DOB+", "+USER_PHONE+", "+USER_EMAIL+ ", "+USER_PASS+ ", "+USER_PASS+ " FROM "+USER_TABLE_NAME+" WHERE "+USER_UNAME+" = '"+accountName+"'";
        Cursor cursor = sqLiteDatabase.rawQuery(query, null);
        if (cursor.moveToFirst())
        {
            do
            {
                SuperUserDetails userDetails = new SuperUserDetails();
                userDetails.setName(cursor.getString(0));
                userDetails.setAddress(cursor.getString(1));
                userDetails.setDob(cursor.getString(2));
                userDetails.setPhone(cursor.getString(3));
                userDetails.setEmail(cursor.getString(4));
                userDetails.setPass(cursor.getString(5));
                userDetails.setPass(cursor.getString(6));
                userDetailList.add(userDetails);
            }while (cursor.moveToNext());
        }
        cursor.close();
        sqLiteDatabase.close();
        return userDetailList;
    }


    public boolean modifyUserDetails(SuperUserDetails modify) {
        SQLiteDatabase db = this.getWritableDatabase();
        ContentValues values = new ContentValues();
        String query = "select * from " +USER_TABLE_NAME;
        Cursor cursor = db.rawQuery(query, null);
        int count = cursor.getCount();
        //  values.put(USER_ID, count);
        values.put(USER_NAME, modify.getName());
        values.put(USER_ADDRESS, modify.getAddress());
        values.put(USER_DOB, modify.getDob());
        values.put(USER_PHONE, modify.getPhone());
        values.put(USER_EMAIL, modify.getEmail());
        // values.put(USER_UNAME, modify.getUname());
        values.put(USER_PASS,modify.getPass());
        //values.put(USER_TYPE, modify.getUtype());
       /* Cursor cursor1 = db.query(USER_TABLE_NAME, new String[] {USER_NAME,USER_ADDRESS,USER_DOB,USER_PHONE,USER_EMAIL,USER_PASS,USER_PASS},null,null,null,null,null,null,null);
        if(cursor1 != null) {
            cursor.moveToLast();
        }
        return cursor1;
        }*/

        /*db.query(USER_TABLE_NAME, null, "USER_UNAME = ?", new String[]{ " USER_UNAME"}, null,null,null,null,null,null,null);*/
        long modifyresult = db.update(USER_TABLE_NAME, values, USER_UNAME + " =?", new String[]{String.valueOf(modify.getUname())});
        if (modifyresult == -1)
        {
            return true;
        }
        else
        {
            return false;
        }
    }

解决方案

Hi,
Follow this links:-
Android SQLite Database Tutorial - CRUD Operations[^]
Android SQLite Database Tutorial[^]
SQLite CRUD Example in Android using ActiveAndroid Library[^]

I hope this will help you...


这篇关于如何在android中使用sqlite显示和修改用户详细信息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆