初始化一个SQLite数据库的android [英] initialize a sqlite database android

查看:84
本文介绍了初始化一个SQLite数据库的android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

喜逢我pretty新在开发Android,我想数据库添加到我的应用程序

Hi every I am pretty new to developing in android and i wanted to add a database to my app

问题是,我不知道如何初始化整个表只有一次。

The problem is that i don't know how to initialize the whole table only once.

我做大量的阅读,我发现,ü可以做到这一点的
在辅助类的的onCreate(SQLiteDatabase DB)方法压倒一切的。

I did a lot of reading and i found that u can do it in the overriding of the onCreate(SQLiteDatabase db) method in the helper class .

这是我的数据字段和我的的onCreate(SQLiteDatabase DB)

These are my data fields and my onCreate(SQLiteDatabase db) method

    public static final String KEY_ROWID = "_id";
    public static final String KEY_NAME = "name";
    public static final String KEY_EIGHTU = "8u";
    public static final String KEY_NINEU = "9u";
    public static final String KEY_TENU = "10u";
    public static final String KEY_ELEVENU = "11u";
    private static final String TAG = "DBAdapter"; 

             @Override
            public void onCreate(SQLiteDatabase db) 
                {
                    db.execSQL(DATABASE_CREATE);        
                 }

但我不知道如何..任何想法?

but am not sure how.. any ideas ?

我的主要问题是,我有我要初始化多行

my main problem is that i have multiple rows that i want to initialize

推荐答案

试用这种方式:

public class MyDBHelper  
{  
    // Database properties   
    private static final String DATABASE_NAME = "Test.sqlite";   
    private static final String DATABASE_TABLE_NAME = "Table 1";   
    private static final int DATABASE_VERSION = 4;

    //  Table1 properties   
    public static final String KEY_ROWID = "_id";   
    public static final String KEY_NAME = "name";   
    public static final String KEY_EIGHTU = "8u";   
    public static final String KEY_NINEU = "9u";      
    public static final String KEY_TENU = "10u";   
    public static final String KEY_ELEVENU = "11u";  
    private static final String TAG = "DBAdapter";

    // Create Script   
    private static final String DATABASE_CREATE_PLAYER = "CREATE TABLE IF NOT EXISTS " + DATABASE_TABLE_NAME + "( " + KEY_ROWID + " INTEGER, " + KEY_NAME + " TEXT, " + KEY_EIGHTU + " TEXT, " + KEY_NINEU + " TEXT, " + KEY_TENU + " TEXT, " + KEY_ELEVENU + " TEXT);";        
    private final Context m_context;  
    private DatabaseHelper m_dbHelper;   
    public static SQLiteDatabase m_db;   
    public MyDBHelper(Context ctx)  
    {   
        this.m_context = ctx;  
        m_dbHelper = new DatabaseHelper(m_context);  
    }   

    private static class DatabaseHelper extends SQLiteOpenHelper
    {
        DatabaseHelper(Context context)
        {
            super(context, DATABASE_NAME, null, DATABASE_VERSION);
        }

        @Override
        public void onCreate(SQLiteDatabase db)
        {
            db.execSQL(DATABASE_TABLE_NAME);
        }

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

    //---opens the database---
    public MyDBHelper open() throws SQLException
    {
        m_db = m_dbHelper.getWritableDatabase();
        return this;
    }

    //---closes the database---    
    public void close()
    {
        if (m_db != null)
            m_db.close();
        if (m_dbHelper != null)
            m_dbHelper.close();
    }  
}

这篇关于初始化一个SQLite数据库的android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆