首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过main activity类调用Database (从另一个类)?

问如何通过main activity类调用Database (从另一个类)?
EN

Stack Overflow用户
提问于 2011-09-17 17:45:10
回答 1查看 4.4K关注 0票数 2

我想让我的代码干净简单,所以我想创建DB,但我想通过main活动从另一个类调用它……我试着这么做,但是没有效果...那么,它应该如何工作呢?

注意:我是android开发领域的新手。所以,对于这种类型的问题,很抱歉...

这是主要的活动:

代码语言:javascript
复制
package com.DataStorage.Excercise;

import android.app.Activity;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;

public class DataStorageActivity extends Activity {

    private Context context;
    public SQLiteDatabase db_1=null;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

       AccessingDB acc= new AccessingDB(context);
       acc.onCreate(db_1);


    }
}

包含DB代码的另一个类..:

代码语言:javascript
复制
package com.DataStorage.Excercise;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class AccessingDB extends SQLiteOpenHelper {

    public AccessingDB(Context context) {
        super(context, "Test_1", null, 1);
        // TODO Auto-generated constructor stub
    }


    @Override
    public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub

        db.execSQL(CreateTable());
        db.execSQL(Insert_1());

    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub

    }

    /*
    public String CreateDB_1(){

        String s1= "create database Test_1;";
            return s1;
    }
    */

    private String CreateTable(){

        String s2="create table Customer(id_1 INTEGER,fn TEXT,ln TEXt);";
        return s2;
    }

    private String Insert_1(){

        String s3="insert into Customer values(1,'aaa','bbb');";
        return s3;

    }

}

非常感谢。

EN

回答 1

Stack Overflow用户

发布于 2014-01-02 19:19:43

如果在MainActivity中调用数据库,难道不能在其他活动中调用MainActivity,然后使用Main调用数据库吗?如下所示:

在您的MainActivity中:

代码语言:javascript
复制
Database db;

在您的其他活动中:

代码语言:javascript
复制
MainActivity main;

main.db.somequery; //call the method you want

还是我误会了你需要别的东西?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7453867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档