Как создать базу данных и вставить в нее из действий в Android? - PullRequest
0 голосов
/ 17 июня 2011

У меня есть вопрос базы данных для вас на Android.

При первом запуске моего приложения я вызываю файл JSON с моего сервера, который мне возвращается, и из этого файла JSON я могу воссоздать список объектов массива с помощью GSON.

Gson gson = new Gson();

ArrayList<Spot> spots = gson.fromJson(sb.toString(),new TypeToken<List<Spot>>() {}.getType());

Теперь, когда у меня есть этот arraylist, я хочу внести все это в базу данных.Все вышеперечисленное достигается в моей всплесковой активности.

Что мне нужно, так это некоторая помощь в создании базы данных, а затем о том, как вводить в нее данные, примеры в Интернете довольно запутанные и отличаются друг от друга

Ответы [ 2 ]

0 голосов
/ 17 июня 2011

Я думаю, что ниже класс помощника может помочь вам

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.provider.BaseColumns;
import android.util.Log;

public class EventDataSQLHelper extends SQLiteOpenHelper {
    private static final String DATABASE_NAME = "events.db";
    private static final int DATABASE_VERSION = 1;
    // Table name
    public static final String TABLE = "events";
    // Columns
    public static final String TIME = "time";
    public static final String TITLE = "title";

    public EventDataSQLHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        String sql = "create table " + TABLE + "( " + BaseColumns._ID
                + " integer primary key autoincrement, " + TIME + " integer, "
                + TITLE + " text not null);";
        Log.d("EventsData", "onCreate: " + sql);
        db.execSQL(sql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        if (oldVersion >= newVersion)
            return;
        String sql = null;
        if (oldVersion == 1)
            sql = "alter table " + TABLE + " add note text;";
        if (oldVersion == 2)
            sql = "";
        Log.d("EventsData", "onUpgrade  : " + sql);
        if (sql != null)
            db.execSQL(sql);
    }
}
0 голосов
/ 17 июня 2011

Учебник по Android Notepad на сайте разработчиков Android поможет вам решить проблему.Все, что вам нужно, это терпение.http://developer.android.com/resources/tutorials/notepad/index.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...