更新在创建的sqlite数据库中的整行(包含多个列)

我想创建一个更新函数,该函数将根据行的INTEGER PRIMARY KEY更改数据库中各列(整个行)的条目-如果可能的话。


我有一个find函数,它将查找数据库的详细信息并将其加载到EditText字段中以进行编辑/更新。


查找按钮(调用查找处理程序)将内容加载到可以更改/编辑的EditText字段中,但是当按下按钮以更新编辑的条目时,整个数据库将被更改的EditText条目覆盖。


为了明确起见,我想更改数据库中包含端口,名称和IP地址的一行,更新该单个条目并将其放回数据库中,而不会覆盖我的所有数据库条目(目前正在发生这种情况)。


我无法使用原始的未编辑形式在data / data / {package name} ...文件夹中查看数据库,因为我使用的是旧的Samsung手机(其中不包含某些未知的database.db指出“用于以下原因运行:无法设置功能...”消息,用于调试/运行该应用程序,并且我使用的PC没有足够的RAM来支持虚拟设备。


任何帮助,建议或示例将不胜感激。我是Android应用程序开发和Java的新手,所以如果问题很明显或很简单,请原谅我。


这是创建表的方式:


 public static final String TABLE_USER = "User";

 public static final String COL_ID = "_id";

 public static final String COLUMN_ID = "UserIP";

 public static final String COLUMN_NAME = "UserName";

 public static final String COLUMN_PORT = "UserPort";


    public void onCreate(SQLiteDatabase db)

     {

            String CREATE_USER_TABLE = "CREATE TABLE IF NOT EXISTS " +

            TABLE_USER + "(" + COL_ID + " INTEGER PRIMARY KEY, " + 

                           COLUMN_PORT + " INTEGER, " + COLUMN_NAME

            + " TEXT, " + COLUMN_ID + " TEXT " + ")";


    try

    {

        db.execSQL(CREATE_USER_TABLE);


    }catch (SQLException e)

    {

      e.printStackTrace();

    }


    }

该发现的功能如下:


public User findHandler(String username, String IP)

{

    String query = "Select * FROM " + TABLE_USER + " WHERE " +

            COLUMN_NAME + " = '" + username + "'" + " and " + COLUMN_ID + " = 

          '" +  String.valueOf(IP) + "'";


    SQLiteDatabase db = this.getWritableDatabase();


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


    User user = new User();


    if (cursor.moveToFirst())

    {

        cursor.moveToFirst();


        user.setUserPort(Integer.parseInt(cursor.getString(1)));


        user.setUserName(cursor.getString(2));


        user.setID(cursor.getString(3));


        cursor.close();


       //Log.d("Message1", msg);


    }


    else

    {

        user = null;

    }


    db.close();


    return user;

}


慕慕森
浏览 274回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java