`

SQLiteDatabase 的使用

阅读更多
功能]

SQLiteDatabase 是关于数据库操作的 可用于 insert delete update query 等操作 可惜美中不足的是:

1. 其不支持创建数据库

2. 其不支持版本更新 或者说其不知道如何做 因为具体数据的差异



鉴于以上的缺陷 有一个辅助类可以完成上面功能 那就是:SQLiteOpenHelper





[代码]

1. 定义SQLiteOpenHelper 并完成 创建 更新 功能

Java代码
public class DBHelper extends SQLiteOpenHelper {  
      
    public static final String TB_NAME = "mycountry";  
    public static final String ID = "_id";  
    public static final String COUNTRY = "country";  
    public static final String CODE = "code";  
      
      
    public DBHelper(Context context, String name,   
            CursorFactory factory,int version) {  
        super(context, name, factory, version);  
    }  
 
    public void onCreate(SQLiteDatabase db) {  
          
        db.execSQL("CREATE TABLE IF NOT EXISTS "   
                + TB_NAME + " ("   
                + ID + " INTEGER PRIMARY KEY,"   
                + COUNTRY + " VARCHAR," 
                + CODE + " INTEGER)");  
    }  
 
    public void onUpgrade(SQLiteDatabase db,   
            int oldVersion, int newVersion) {  
          
        db.execSQL("DROP TABLE IF EXISTS "+TB_NAME);  
        onCreate(db);  
    }  


public class DBHelper extends SQLiteOpenHelper {
   
    public static final String TB_NAME = "mycountry";
    public static final String ID = "_id";
    public static final String COUNTRY = "country";
    public static final String CODE = "code";
   
   
    public DBHelper(Context context, String name,
            CursorFactory factory,int version) {
        super(context, name, factory, version);
    }

    public void onCreate(SQLiteDatabase db) {
       
    db.execSQL("CREATE TABLE IF NOT EXISTS "
                + TB_NAME + " ("
        + ID + " INTEGER PRIMARY KEY,"
            + COUNTRY + " VARCHAR,"
            + CODE + " INTEGER)");
    }

    public void onUpgrade(SQLiteDatabase db,
            int oldVersion, int newVersion) {
       
        db.execSQL("DROP TABLE IF EXISTS "+TB_NAME);
        onCreate(db);
    }
}







2. 从SQLiteOpenHelper 得到SQLiteDatabase的实例

Java代码
DBHelper helper = new DBHelper(this, DB_NAME, null, VERSION);  
 
SQLiteDatabase db = helper.getWritableDatabase(); 

DBHelper helper = new DBHelper(this, DB_NAME, null, VERSION);

SQLiteDatabase db = helper.getWritableDatabase();





3. SQLiteDatabase 的一些操作:

* 插入数据:

Java代码
ContentValues values = new ContentValues();  
        values.put(DBHelper.COUNTRY, "中国");  
        values.put(DBHelper.CODE, 86);  
        db.insert(DBHelper.TB_NAME,DBHelper.ID, values); 

ContentValues values = new ContentValues();
        values.put(DBHelper.COUNTRY, "中国");
        values.put(DBHelper.CODE, 86);
        db.insert(DBHelper.TB_NAME,DBHelper.ID, values);



* 改动数据

Java代码
db.insert(DBHelper.TB_NAME,DBHelper.ID,null);  
        values.clear();  
        values.put(DBHelper.COUNTRY, "意大利");  
        values.put(DBHelper.CODE, 39);  
        db.update(DBHelper.TB_NAME, values,DBHelper.ID + " = 2",null); 

db.insert(DBHelper.TB_NAME,DBHelper.ID,null);
        values.clear();
        values.put(DBHelper.COUNTRY, "意大利");
        values.put(DBHelper.CODE, 39);
        db.update(DBHelper.TB_NAME, values,DBHelper.ID + " = 2",null);

* execSQL 执行SQL语言

Java代码
db.execSQL("INSERT INTO " 
                + DBHelper.TB_NAME + "(" 
                + DBHelper.COUNTRY + "," 
                + DBHelper.CODE + ") VALUES " 
                + "('洪都拉斯',504)"); 

db.execSQL("INSERT INTO "
                + DBHelper.TB_NAME + "("
                + DBHelper.COUNTRY + ","
                + DBHelper.CODE + ") VALUES "
                + "('洪都拉斯',504)");

* 查询数据

Java代码
Cursor c = db.query(DBHelper.TB_NAME,null,null,null,null,null,  
                DBHelper.CODE+" DESC"); 

Cursor c = db.query(DBHelper.TB_NAME,null,null,null,null,null,
        DBHelper.CODE+" DESC");

* 删除数据所有数据

Java代码
db.delete(DBHelper.TB_NAME,null,null); 
分享到:
评论

相关推荐

    Android数据库SQLiteDataBase的使用

    因为数据库的操作在开发中的重要性是不言而喻的,所以,在数据库这一方面下了很大的功夫,终于掌握了基本的操作,包括建表和删除,对数据库的操作,“增删改查”基本操作,而且用了封装性来实现,是学习数据库的一个...

    android开发sqliteDataBase使用实例

    本教程将深入讲解如何在Android项目中使用SQLite数据库。 首先,我们需要创建一个SQLite数据库。在Android中,我们通过继承`SQLiteOpenHelper`类来实现这个功能。`SQLiteOpenHelper`提供了创建、升级和打开数据库的...

    实例讲解Android中SQLiteDatabase使用方法

    本文将通过一个实例详细介绍如何在Android中使用SQLiteOpenHelper和SQLiteDatabase进行数据库操作。 首先,要使用SQLite数据库,你需要创建一个继承自SQLiteOpenHelper的类。这个类会处理数据库的创建、升级以及...

    Sqlite及SQLiteDatabase的使用

    在实际使用中,可以通过SQLiteDatabase的`rawQuery()`或`execSQL()`方法执行这些SQL命令。 在Android中,数据库操作通常在后台线程进行,以避免阻塞UI线程,提高用户体验。可以使用SQLiteOpenHelper这个辅助类来...

    Android 数据库SQLiteDatabase的使用

    Android 数据库SQLiteDatabase的使用 1.数据库辅助操作接口SQLiteDatabaseOpenHelper的使用 2.ContentValues的使用 3.数据的增删改查 4.listView 与Adapter的使用 5.OptionsMenu的使用 6.Editext隐藏失去焦点的方法

    listView SQLiteDatabase的使用

    假设我们使用ArrayAdapter,我们需要创建一个自定义的`MyAdapter`类,继承自ArrayAdapter,它会根据数据填充ListView的每个项目。 ```java public class MyAdapter extends ArrayAdapter<String> { public ...

    Android SQLiteDatabase的使用详解

    ### Android SQLiteDatabase的使用详解 在Android开发过程中,`SQLiteDatabase`是进行本地数据存储的核心类之一,它提供了创建和查询SQLite数据库的方法。SQLite是一种轻量级的嵌入式数据库引擎,广泛应用于移动...

    Android使用SQLiteDatabase直接存取数据与图像

    在这个主题中,我们将深入探讨如何在Android环境下使用SQLiteDatabase来直接存取数据和图像。 首先,要使用SQLite数据库,我们需要创建一个SQLiteOpenHelper的子类。这个类有两个关键方法:`onCreate()` 和 `...

    SQLiteDatabase

    封装库"SQLiteDatabase"可能包含了这些功能,并提供了更简洁的API,比如使用C++的类和方法,而不是直接调用C接口。例如,它可能会有如下类和方法: - `SQLiteDB`类,代表一个数据库连接,有`open()`和`close()`方法...

    androidDb.rar_ SQLiteDatabase_SQLiteDatabase_android

    在本例"androidDb.rar_ SQLiteDatabase_SQLiteDatabase_android"中,我们将探讨如何在Android应用中使用SQLite数据库。 SQLite数据库的核心类是`SQLiteDatabase`,它是Android提供的一个接口,用于执行SQL语句和...

    SqliteDatabase应用

    本文将深入探讨如何使用`SqliteDatabase`进行数据库操作,并结合`Menu`来实现查询、新增、修改和删除功能。 首先,`SqliteDatabase`是Android提供的一个轻量级数据库引擎,它基于SQLite,支持大部分SQL语法。为了...

    安卓开发实验6——SQLite和SQLiteDatabase应用

    3. **插入数据**:使用SQLiteDatabase的`insert()`方法将新闻信息添加到数据库。创建ContentValues对象来存储键值对,然后调用`insert()`方法。 ```java ContentValues values = new ContentValues(); values.put...

    实验七SQLite和SQLiteDatabase的使用.docx

    【实验七:SQLite和SQLiteDatabase的使用】 在Android开发中,SQLite是一个不可或缺的组件,用于存储和管理应用程序的结构化数据。SQLite是一个轻量级的、嵌入式的、支持事务的SQL数据库引擎,特别适合资源有限的...

    sqlitedatabase的使用

    本教程将详细讲解如何使用SQLite数据库来保存用户的登录信息,并在不同的Activity之间进行数据传递和展示。 首先,我们需要在Android项目中创建一个SQLite数据库。这通常通过实现`SQLiteOpenHelper`类来完成。这个...

    SQLiteDataBase简单Android实例

    在这个"SQLiteDataBase简单Android实例"中,我们将深入探讨如何在Android应用中有效地利用SQLite进行数据操作。 首先,我们需要创建一个SQLite数据库。在Android中,我们通常通过继承`SQLiteOpenHelper`类来实现。...

    SQLitedatabase的工程练习源码

    然后,我们可以使用`SQLiteDatabase`对象执行SQL查询、插入、更新和删除操作。 例如,插入一条数据的代码可能如下: ```java public boolean insertData(String name, int age) { SQLiteDatabase db = this....

    db.rar_DEMO_SQLiteDatabase_sqlite

    一个关于SQLite数据库操作的android应用demo,通过本应用你可以学到:使用SQLiteDatabase操作SQLite数据库,使用SQLiteOpenHelper获取用于操作数据库的SQLiteDatabase实例

    SQLiteDatabase增删改查示例代码

    本示例主要关注`SQLiteDatabase`的增删改查操作,并且对比了Android自带的SQLite API与第三方库greenDao的使用方法。 一、`SQLiteDatabase`的基本操作 1. 增加(Add):在Android中,我们首先需要创建一个...

    android studio SQLiteDatabase的基本功能与操作

    下面将详细介绍如何在Android Studio中使用SQLiteDatabase进行基本的功能与操作。 首先,我们需要在AndroidManifest.xml文件中添加读写权限,以允许应用访问SQLite数据库: ```xml ``` 接着,创建一个继承自...

Global site tag (gtag.js) - Google Analytics