古詩詞大全網 - 個性簽名 - sqllitedatabase.insert方法

sqllitedatabase.insert方法

1、使用insert方法插入記錄

SQLiteDatabase的insert方法的簽名為long insert(String table,String nullColumnHack,ContentValues values),這個插入方法的參數說明如下:

table:代表想插入數據的表名。

nullColumnHack:代表強行插入null值的數據列的列名。

values:代表壹行記錄的數據。

insert方法插入的壹行記錄使用ContentValues存放,ContentValues類似於Map,它提供了put(String key,Xxx value)(其中key為數據列的列名)方法用於存入數據、getAsXxx(String key)方法用於取出數據。

例如如下語句:

ContentValues values=new ContentValues();

values.put("name","孫悟空"):

values.put("age",500);

//返回新添記錄的行號,該行號是壹個內部直,與主鍵id無關,發生錯誤返回-1

long rowid=db.insert("person_inf",null,values);

2、使用update方法更新數據

SQLiteDatabase的update方法簽名為update(String table,ContentValues values,String whereClause,String[] whereArgs),這個更新方法的參數說明如下:

table:代表想要更新數據的表名。

values:代表想要更新的數據。

whereClause:滿足該whereClause子句的記錄將會被更新。

whereArgs:用於為whereArgs子句傳遞參數。

例如我們想要更新person_inf表中所有主鍵大於20的人的人名,可調用如下方法:

ContentValues values=new ContentValues();

//存放更新後的人名

values.put("name","新人名");

int result=db.update("person_inf",values,"_id>?",new Integer[]{20});

3、使用delete方法刪除記錄

SQLiteDatabase的delete方法簽名為delete(String table,String whereClause,String[] whereArgs),這個刪除的參數說明如下:

table:代表想刪除數據的表名。

whereClause:滿足該whereClause子句的記錄將會被刪除。

whereArgs:用於為whereArgs子句傳入參數。

刪除person_inf表中所有人名以孫開頭的記錄

int result=db.delete("person_inf","person_name like ?",new String[]{"孫_"});

4、使用query方法查詢記錄

SQLiteDatabase的query方法簽名為Cursor query(boolean distinct,String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy,String limit),這個query方法的參數說明如下。

distinct:指定是否去除重復記錄。

table:執行查詢數據的表名。

columns:要查詢出來的列名。

selection:查詢條件子句。

selectionArgs:用於為selection子句中占位符傳入參數值,值在數組中的位置與占位符在語句中的位置必須壹致,否則就會有異常。

groupBy:用於控制分組。

having:用於對分組進行過濾。

orderBy:用於對記錄進行排序。

limit:用於進行分頁。

例如查詢出person_inf表中人名以孫開頭的數據

Cursor cursor=db.query("person_inf",new String[]{"_id,name,age"},"name like ?",new String []{"孫%"},null,null,"personid desc","5,10");

cursor.close();