对android的SQLITE数据库不是很熟练,写一些自己的记录吧,以后可以看看
1.查询
SQLiteDatabase.query
(String table,String[] columns,String selection,String[] selectionArgs,String groupBy,String having,String orderBy)
第一个参数:表名
第二个参数:要查的列 为NULL是查全部
第三个参数:限制条件的列
第四个参数:限制条件的列的值
之后的参数都不重要,可以为NULL
如下例子:
Cursor cursor = sqliteDatabase.query(TableName, new String[]{"file_id","user_id","file_name","file_modify","file_mime",
"mediaid","id","upload_id","file_size","file_path"},
"user_id=? and type=?", new String[]{uid,type}, null, null, null);
while(cursor.moveToNext()){}
或者使用原生态句子--------------------------
Object values[] = new Object[14];
String sql = "insert into"+FileTableName+"(file_modify,file_name,user_id,file_mime,upload_id,file_size,file_path,progress,up_size,up_state,type,mediaid,ispic,isshare) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?)" ;
values[10] = type;
values[11] = mediaid;
values[12] = ispic;
values[13] = Integer.parseInt(String.valueOf(upFile.get(i).get("isshare")));;
sqliteDatabase.execSQL(sql,values);
2、插入
SQLiteDatabase.insert(String table, String nullColumnHack,ContentValues values)
第一个参数:表名
第二个参数:一般为空
第三个参数:就是插入的值了
ContentValues values = new ContentValues();
int file_id = Integer.valueOf(fid);
values.put("file_id", file_id);
values.put("file_modify", datatime);
values.put("file_name", upFile.get("f_name").toString());
values.put("user_id", uid);
sqliteDatabase.insert(TableName, null, values);
或者使用原生态句子--------------------------
Object values[] = new Object[2];
String sql = "insert into "+AutoFileTableName+"(userid,file_path) values (?,?)" ;
values[0] = uid;
values[1] = upFile.get(i).get("path").toString();
sqliteDatabase.execSQL(sql,values);
3、删除
String[] args = {type};
sqliteDatabase.delete(TableName, "type=?", args);
或者使用原生态句子--------------------------
String sql = "delete from "+ TableName +" where user_id='"+uid + "' and ispic =1 and type=0";
sqliteDatabase.execSQL(sql);
4。更新
String[] args = {uid};
ContentValues values = new ContentValues();
values.put("user_id", uid);
values.put("picup", picup);
sqliteDatabase.update(UserTableName, values,"user_id=?",args);
或者使用原生态句子--------------------------
String[] args = {uid};
ContentValues values = new ContentValues();
values.put("user_id", uid);
if(null!=wifi)
values.put("wifi", wifi);
values.put("picup", picup);
sqliteDatabase.update(UserTableName, values,"user_id=?",args);
String sql = "update "+FileTableName+" set progress="+progress+",up_state='"+state +"' where id="+id;
注意:如果更新的列是字符串,要加 ' ' .
sqliteDatabase.execSQL(sql)