PDA

View Full Version : ساخت دیتابیس در اندروید



sara2222
پنج شنبه 19 تیر 1393, 17:39 عصر
سلام خدمت همگی
من یک تازه کار هستم و میخواستم از همگی خواهش کنم که توی رفع این مشکل به من کمک کنید.
دارم یک برنامه ای می نویسم که چند صفحه داره و در هر صفحه یک TextView و چهار RadioButton گذاشتم.
اصل برنامه به این صورت هست که باید یک دیتابیس درست کنم که شامل یک جدول باشه. این جدول 5 ستون برای id، سوال و چهار گزینه داره.
برای این کار یک کلاس به اسم DatabaseHelper ایجاد کردم و کدهای زیر رو توش نوشتم. توی این کلاس یک دیتابیس با یک جدول ایجاد میشه.


package com.example.dbtest;import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;public class DatabaseHelper extends SQLiteOpenHelper {

private final String TAG = "DatabaseHelper";
private static final String DATABASE_NAME = "db";
private static final String TABLE_NAME = "contacts";
private static final String COLUMN_ID = "_id";
private static final String COLUMN_QUESTION = "question";
private static final String COLUMN_G1 = "g1";
private static final String COLUMN_G2 = "g2";
private static final String COLUMN_G3 = "g3";
private static final String COLUMN_G4 = "g4";

private static final String CREATE_TABLE = "CREATE_TABLE" + TABLE_NAME + "(" +
COLUMN_ID + "INTEGER PRIMARY KEY AUTOINCREMENT," +
COLUMN_QUESTION + "TEXT," +
COLUMN_G1 + "TEXT," + COLUMN_G2 + "TEXT," +
COLUMN_G3 + "TEXT," + COLUMN_G4 + "TEXT" + "):"; public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
// TODO Auto-generated constructor stub
Log.i(TAG, "Object created.");
} @Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(CREATE_TABLE);
} @Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("Drop table if exists + TABLE_NAME");
onCreate(db);
}

public String getTableName(){
return TABLE_NAME;
}

public String getRowIdName(){
return COLUMN_ID;
}
}
یک کلاس دیگه ام گذاشتم به اسم DatabaseHandler که قراره توش اعمالی که باید روی رکوردها انجام بشه رو توش بنویسم.


package com.example.dbtest;import android.content.ContentValues;
import android.content.Context;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;public class DatabaseHandler {

private final String TAG = "DatabaseHandler";
static final String QUESTION = "question";
static final String G1 = "g1";
static final String G2 = "g2";
static final String G3 = "g3";
static final String G4 = "g4";

private DatabaseHelper dbHelper;
private SQLiteDatabase database;

public DatabaseHandler (Context context){
dbHelper = new DatabaseHelper (context);
Log.i(TAG, "Object create.");
}

public void open() throws SQLException {
database = dbHelper.getWritableDatabase();
}

public void close(){
dbHelper.close();
}

public void insertContact (){

}}

حالا سوال من اینه که آیا این کدایی که نوشتم درسته؟
قراره که سوالات و گزینه ها در جدول نوشته باشه. من چجوری باید این سوالات و گزینه ها رو توی جدول قرار بدم؟
برنامه باید موقع لود شدن صفحه یک سوال و چهار گزینه اش (یک سطر جدول) رو نمایش بده. چجوری این کار رو انجام بدم؟
خواهش میکنم کمکم کنین خیلی گرفتار شدم.
ممنون