SQLiteOpenHelper的一些用法,关增、删、改、查参数的说明
今天要用到sqlite数据库来保存用户登陆信息,都快把数据库知识忘记了,又做了一份有关增、删、改、查的参数的详细说明。后来想想做好这个不保存下来实在太可惜了,所以就写了文章记录下,以免以后忘了再整理。
publicclassAccountDBextendsSQLiteOpenHelper{privatestaticfinalStringDB_NAME="message.db";privatestaticfinalintDB_VERSION=1;publicAccountDB(Contextcontext){super(context,DB_NAME,null,DB_VERSION);}@OverridepublicvoidonCreate(SQLiteDatabasedb){Stringsql="CREATETABLEIFNOTEXISTS"+"gd_account"+"("+"_id"+"INTEGERPRIMARYKEYNOTNULL,"+"username"+"VARCHAR(50),"+"password"+"VARCHAR(50),"+"remember"+"BYTE,"+"automate"+"BYTE"+")";db.execSQL(sql);}@OverridepublicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){//TODOAuto-generatedmethodstub//版本更新会调用这个方法}/***添加数据*@paramnullColumnHack空列的默认值*@paramvaluesContentValues类型的一个封装了列名称和列值的Map*@return*/publiclonginsert(StringnullColumnHack,ContentValuesvalues){SQLiteDatabasewdb=getWritableDatabase();returnwdb.insert("gd_account",nullColumnHack,values);}/***更新数据*@paramvalues更行列ContentValues类型的键值对(Map)*@paramwhereClause更新条件(where字句)*@paramwhereArgs更新条件数组*@return*/publicintupdate(ContentValuesvalues,StringwhereClause,String[]whereArgs){SQLiteDatabasewdb=getWritableDatabase();returnwdb.update("gd_account",values,whereClause,whereArgs);}/***删除数据*@paramwhereClause删除条件*@paramwhereArgs删除条件值数组*@return*/publicintdelete(StringwhereClause,String[]whereArgs){SQLiteDatabasewdb=getWritableDatabase();returnwdb.delete("gd_account",whereClause,whereArgs);}/***查询数据*@paramcolumns要查询的字段*@paramselection要查询的条件*@paramselectionArgs要查询的条件中占位符的值*@paramgroupBy对查询的结果进行分组*@paramhaving对分组的结果进行限制,分组条件*@paramorderBy对查询的结果进行排序(“iddesc”表示根据id倒序)*@paramlimit分页查询限制(如”1,3”表示获取第1到第3的数据共3条,*如“2”表示获取两条数据)*@return*/publicCursorquery(String[]columns,Stringselection,String[]selectionArgs,StringgroupBy,Stringhaving,StringorderBy,Stringlimit){SQLiteDatabaserdb=getReadableDatabase();returnrdb.query("gd_account",columns,selection,selectionArgs,groupBy,having,orderBy,limit);}/***Cursor游标接口常用方法:*getCount()总记录条数*isFirst()判断是否第一条记录*isLast()判断是否最后一条记录*moveToFirst()移动到第一条记录*moveToLast()移动到最后一条记录*move(intoffset)移动到指定记录*moveToNext()移动到下一条记录*moveToPrevious()移动到上一条记录*getColumnIndex(StringcolumnName)根据列名得到列位置id*getColumnIndexOrThrow(StringcolumnName)根据列名称获得列索引*getInt(intcolumnIndex)获得指定列索引的int类型值*getString(intcolumnIndex)获得指定列索引的String类型值*/}
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。