永发信息网

ContentResolver.query查询URI,得到Cursor没有

答案:1  悬赏:60  手机版
解决时间 2021-03-29 15:57
ContentResolver.query查询URI,得到Cursor没有
最佳答案
1)自定义DBOpenhelp.java

package com.kevin.text;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

public class DBOpenhelp {
private Context mContext ;
private SQLiteDatabase sqLiteDatabase ;
public final String COlUMN_NAME = "User_name" ;
public final String COlUMN_AGE = "User_age" ;
public final String COlUMN_ADD = "User_address" ;

public DBOpenhelp(Context context){
mContext = context ;
}

public void OpenorCreateDB(){
sqLiteDatabase = mContext.openOrCreateDatabase("sqlite", mContext.MODE_WORLD_WRITEABLE, null) ;
}

public void insert(){
sqLiteDatabase.execSQL( "CREATE TABLE Users(_id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,User_name VARCHAr( 30 ) NOT NULL,User_address VARCHAr( 30 ) NOT NULL, User_age INT NOT NULL )") ;
sqLiteDatabase.execSQL("INSERT INTO Users(_id,User_name, User_address, User_age) VALUES (1, 'Kevin', 'Chengdu', 23)") ;

}

public Cursor select(){
if(sqLiteDatabase!=null){
return sqLiteDatabase.query("Users", new String[]{"_id",COlUMN_NAME,COlUMN_ADD,COlUMN_AGE}, null, null, null, null, null) ;
}
return null ;
}

public SQLiteDatabase getDB(){

return SQLiteDatabase.openOrCreateDatabase("data/data/com.kevin.text/databases/text", null) ;
}
}

2)定义了一个Activity 调用DBOpenhelp 中的方法:

package com.kevin.text;

import android.app.ListActivity;
import android.content.Context;
import android.database.Cursor;
import android.os.Bundle;
import android.util.Log;
import android.widget.SimpleCursorAdapter;

public class ListView extends ListActivity {
public DBOpenhelp mDbOpenhelp ;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
mDbOpenhelp = new DBOpenhelp(this) ;
mDbOpenhelp.OpenorCreateDB() ;
mDbOpenhelp.insert() ;
display() ;

}
private void display() {
Cursor mCursor = mDbOpenhelp.select() ;
SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_2, mCursor,
new String[]{mDbOpenhelp.COlUMN_NAME, mDbOpenhelp.COlUMN_AGE}, new int[]{android.R.id.text1 , android.R.id.text2}) ;
setListAdapter(simpleCursorAdapter) ; //成功显示了表中的一条记录下的2个字段。

}

}

3)自定义MyProvider

package com.kevin.text;

import android.content.ContentProvider;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.net.Uri;
import android.util.Log;

public class MyProvider extends ContentProvider {
private DBOpenhelp dbOpenhelp ;
private SQLiteDatabase db ;
@Override
public int delete(Uri uri, String selection, String[] selectionArgs) {
// TODO Auto-generated method stub
return 0;
}

@Override
public String getType(Uri uri) {
// TODO Auto-generated method stub
return null;
}

@Override
public Uri insert(Uri uri, ContentValues values) {
// TODO Auto-generated method stub
return null;
}

@Override
public boolean onCreate() {
dbOpenhelp = new DBOpenhelp(getContext()) ;
SQLiteDatabase db = dbOpenhelp.getDB() ; //得到sqlitedatabase对象
return true;
}

@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
// TODO Auto-generated method stub
if (uri.equals("content://com.kevin.provider/Users")) {

Cursor mCursor = db.query("Users", new String[]{"User_name"}, null, null, null, null, null) ;

return mCursor ;
}else {

return null ;
}

}

@Override
public int update(Uri uri, ContentValues values, String selection,
String[] selectionArgs) {
// TODO Auto-generated method stub
return 0;
}

}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
若把一个点A的横坐标乘以-1,纵坐标不变,则
健身房的私人教练怎么收费
阅读理解WhenyouarereadingsomethinginEngli
风吹杨柳哗啦是谁唱的
庭前叶落是什么意思
=IF(A2<>"",1,SUM(B1,1)) 这个函数公式具体怎
1965年3月初六阳历多少
高中地理水坝
人生多少不趁意,求下联
影响吸收的主要因素有什么
尿有些发红是怎么回事
高三中途转学
牛顿的突出贡献【最主要的】
养鹅与鹅肉消费前景如何?
中国北方有多少个茶叶批发市场
推荐资讯
什么样的答案最容易获奖?
求 实况足球 PES2016 大师联赛强制转会修改器
养的花终于开花了,用一个成语来说
民主政治对人类文明的发展具有重要意义。为后
蓝鲸的特点
众泰汽车模仿奔驰哪些方面?
直接拔U盘对U盘有伤害还是对电脑有伤害?
请问框框里面的是怎么解来的?
化学从头学起,应该买什么书?
HK417和SR-25哪个好?
红豆沙的吃法
中小企业配wms,不需要特别好的,功能、价位
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?