`
samyou
  • 浏览: 106089 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android sqlite的一些简单的操作

阅读更多
//MySQLHelper .java
public class MySQLHelper extends SQLiteOpenHelper 
{
	public static String DB_NAME = "Samyou";
	public static String TABLE_NAME = "user_profile";
	public static String COLUME_ID = "id";
	public static String COLUME_NAME = "name";
	public static String COLUME_AGE = "age";
	public static String COLUME_LOCATION = "location";
	
	
	public MySQLHelper(Context context, String name, CursorFactory factory,
			int version) {
		super(context, name, factory, version);
	}

	@Override
	public void onCreate(SQLiteDatabase db) 
	{
		System.out.println("db onCreate!!!!!!");
		Log.e("sqltest", "onCreat table");
		String sql = "create table if not exists "
			+ TABLE_NAME+ " (" 
			+ COLUME_ID + " integer primary key," 
			+ COLUME_NAME + " varchar," 
			+ COLUME_AGE+ " integer," 
			+ COLUME_LOCATION +" varchar);";
		Log.e("sqltest", sql);
		db.execSQL(sql);
	}

	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 
	{
		db.execSQL("drop table if exists "+TABLE_NAME);
		onCreate(db);
	}

}

//MainPage.java
public class MainPage extends Activity 
{
	MySQLHelper mySQLHelper = null;
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mySQLHelper = new MySQLHelper(this,MySQLHelper.DB_NAME,null,8);
        ContentValues contentValues = new ContentValues();
        contentValues.put(MySQLHelper.COLUME_NAME, "samyou");
        long now = System.currentTimeMillis();
        contentValues.put(MySQLHelper.COLUME_AGE, now);
        System.out.println(now);
        contentValues.put(MySQLHelper.COLUME_LOCATION, "loc");
        insertColume(contentValues);
        ContentValues contentValues2 = new ContentValues();
        contentValues2.put(MySQLHelper.COLUME_NAME, "samyou2");
        contentValues2.put(MySQLHelper.COLUME_AGE, System.currentTimeMillis());
        contentValues2.put(MySQLHelper.COLUME_LOCATION, "loc2");
        insertColume(contentValues2);
        
        Vector<ContentValues> v = getAll();
        Log.e("sqltest", "v,size: "+v.size());
        for(int i=0;i<v.size();i++)
        {
        	ContentValues contentValues3 = v.elementAt(i);
        	System.out.println("person: "+i);
        	Log.e("sqltest", "COLUME_ID "+contentValues3.getAsInteger(MySQLHelper.COLUME_ID));
        	Log.e("sqltest", "COLUME_NAME "+contentValues3.getAsString(MySQLHelper.COLUME_NAME));
        	Log.e("sqltest", "COLUME_AGE "+contentValues3.getAsLong(MySQLHelper.COLUME_AGE));
        	Log.e("sqltest", "COLUME_LOCATION "+contentValues3.getAsString(MySQLHelper.COLUME_LOCATION));
        }
    }
    
    private Vector<ContentValues> getAll()
    {
    	Vector<ContentValues> v = new Vector<ContentValues>();
    	SQLiteDatabase db = mySQLHelper.getWritableDatabase();
    	Cursor cursor = db.query(MySQLHelper.TABLE_NAME, new String[]{MySQLHelper.COLUME_ID,
    																  MySQLHelper.COLUME_NAME,
    																  MySQLHelper.COLUME_AGE,
    																  MySQLHelper.COLUME_LOCATION},
    																  null, null, null, null, 
    																  MySQLHelper.COLUME_ID);
    	int idindex = cursor.getColumnIndex(MySQLHelper.COLUME_ID);
    	int nameindex = cursor.getColumnIndex(MySQLHelper.COLUME_NAME);
    	int ageindex = cursor.getColumnIndex(MySQLHelper.COLUME_AGE);
    	int locationindex = cursor.getColumnIndex(MySQLHelper.COLUME_LOCATION);
    	cursor.moveToFirst();
    	while(!cursor.isAfterLast())
    	{
    		Log.e("", "move cursor");
    		ContentValues contentValues = new ContentValues();	
    		contentValues.put(MySQLHelper.COLUME_ID, cursor.getInt(idindex));
    		contentValues.put(MySQLHelper.COLUME_NAME, cursor.getString(nameindex));
    		contentValues.put(MySQLHelper.COLUME_AGE, cursor.getLong(ageindex));//cursor.getInt(ageindex));
    		contentValues.put(MySQLHelper.COLUME_LOCATION, cursor.getString(locationindex));
    		v.add(contentValues);
    		cursor.moveToNext();
    	}
    	cursor.close();
    	db.close();
    	return v;
    }
    
    private void updateColume(ContentValues contentValues,int id)
    {
    	SQLiteDatabase db = mySQLHelper.getWritableDatabase();
    	db.update(MySQLHelper.TABLE_NAME, contentValues, MySQLHelper.COLUME_ID+"=?", new String[]{id+""});
    	db.close();
    }
    
    private void deleteColume(int id)
    {
    	Log.e("", "deleteColume");
    	SQLiteDatabase db = mySQLHelper.getWritableDatabase();
    	int a = db.delete(MySQLHelper.TABLE_NAME, MySQLHelper.COLUME_ID+"=?", new String[]{id+""});
    	db.close();
    	Log.e("", "delete colume: "+ a);
    }
    
    private int insertColume(ContentValues contentValues)
    {
    	int cnt = -1;
    	SQLiteDatabase db = mySQLHelper.getWritableDatabase();
    	cnt = (int)db.insert(MySQLHelper.TABLE_NAME, MySQLHelper.COLUME_ID, contentValues);
    	Log.e("sqltest", "insert cnt: "+cnt);
    	db.close();
    	return cnt;
    }
    
    
    
}
分享到:
评论

相关推荐

    Android SQLite数据库操作Demo

    这是一个简单的sqlite数据库操作,包含增删改查

    Android Sqlite操作类(原创)

    现用项目中Sqlite操作类, 1.数据库初始化 2.数据库版本升级 3.从表中查询数据,并返回ArrayList,简单操作不需要建类 4.单一行查询返回、int 返回、string查询返回

    Android中SQLite数据库查看工具

    SQLite是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。它是一个零配置的数据库,这意味着与其他数据库不一样,您...SQLite 使用 ANSI-C 编写的,并提供了简单和易于使用的 API。

    android sqlite简单增删改查操作

    android sqlite简单增删改查操作

    Android数据库SQLite基本操作工程

    Android数据库SQLite基本操作工程,最简单的增删改查方法。

    androidSqlite数据库操作

    androidSqlite数据库操作,简单的单表实现增删改查

    android SQLite数据库管理软件

    该软件内存小、打开即用、操作简单,可以帮助用户更加方便快捷的操作SQLite数据库,让android程序开发更加迅速

    Android 对sqlite的封装,实现CRUD

    大家好,个人觉得用Sqlite数据库时,经常需要进行机械性的CRUD操作,故对其进行了一下封装,希望能起到抛砖引玉的作用。 目的:封装共有的CRUD 下面简单的说一下使用步骤,如果觉得多余,可以无视。 1. 实现自己...

    android_sqlite测试

    SQLite是一种轻量级的小型数据库,虽然比较小,但是功能相对...Android系统中也不例外,也是采用SQLite,本节中就学习下在andorid中怎样使用该数据库来存放数据,并且对SQLite完成简单的新建,更新,查询,删除等操作。

    Android数据库SQLite简单应用

    如何在代码中创建SQLite数据库,创建后数据库位置,数据库操作。 如何在代码中创建SQLite数据库,创建后数据库位置,数据库操作。

    [Android] 使用SQLite简单增删改查操作数据库 显示ListView中 源码

    本文主要参考博客完成,通过SQLite对Android数据库进行简单的操作,包括创建数据库、建表、更新数据、删除数据、插入数据,并通过适配器显示在ListView中。基础免费资源,仅供大家学习。希望对大家有所帮助,是...

    Android下操作sqlite简单示例

    Android下操作sqlite简单示例,是从网上整理的示例,对第一次学习sqlite的人非常实用。

    安卓SQLite本地数据库操作

    安卓本地数据库SQLite的简单操作,可以作为安卓开发的参考

    AndroidSqlite数据库操作封装SQLiteUtils.zip

    一个简单的基于Android的Sqlite数据库的操作封装,它有如下的好处:便捷地创建表和增添表字段灵活的数据类型处理通过操作对象来insert或者update表记录支持多种查询方式,支持多表自定义的复杂查询,支持分页查询支持...

    Android代码-一个简单的 SQLite 和 Excel 互相转换的库子

    SQLiteToExcel 库整合了 Apache POI 和一些基本的数据库操作,使得 SQLite 和 Excel 之间相互转换更加便捷。 从 v1.0.5 版本开始,不再支持 xlsx 格式,因为 poi ooxml 库和其他一些相关的依赖太大了,体积超过了 10...

    Android SQLite创建数据库 并添加、修改记录.rar

    并添加、修改记录,创建或打开数据库,关闭数据库,插入记录,删除记录,修改记录,向文本区中添加文本,对SQLite孙熟悉的朋友,这个代码相当有参考价值哦,简单易懂的Android SQLite数据库基础操作范例,...

    在安卓中使用Android SQLite的例子.rar

    在安卓中使用Android SQLite的例子,SQLite是当前比较流行的也是Android中使用数据库最常用的一种方式,这个例子是比较简单的,使用SQLite连接并读取...相信会对Android开发新手提供一些关于SQLite操作方面的样例。

    android SQLite读写数据实例.rar

    一个实用的android SQLite读取写入数据实例源码,Android编程当然和数据库也是息息相关的,这个例子中涉及了简单的界面设计,更多的是涉及SQLite的操作,代码中的每一个intent都会带一个Bundle型的extras数据。...

    android访问sqlite操作

    该资源中包含了一个像数据库中怎删改查的简单sqlite操作作,简单易懂喜欢的下载!

Global site tag (gtag.js) - Google Analytics