با سلام و خسته نباشید. لطفا در استفاده از دیتابیس خارجی کمکم کنید. من برای برنامه م ابتدا یک دیتابیس را ایجاد کردم و برای معرفی به برنامه م، هر کدام از کلاس های DataBaseHelper و یا MySQLiteAssetHelper را امتحان کردم. اما مدت هاست حتی یک رکورد از دیتابیس رو نمیتونم در برنامه م نمایش بدم. لطفا راهنمایی م کنید.
با تشکر فراوان...
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.codegostarniloo.negar/com.codegostarniloo.negar.CallActivity}:
android.database.sqlite.SQLiteException: no such column: rowid (code 1): , while compiling: SELECT 10 FROMmohtava WHERE rowid='3'
با استفاده از کلاس DataBaseHelper
myDbHelper = new DataBaseHelper(CallActivity.this);
try {
myDbHelper.createDataBase();
} catch (IOException ioe) { }
try {
myDbHelper.openDataBase();
} catch (SQLException sqle) { }
db = myDbHelper.getReadableDatabase();
Cursor c = db.rawQuery("SELECT 4 FROM" + TABLE_NAME + " WHERE rowid='3'",null);
if (c.moveToFirst()) {
do{
text= c.getString(c.getColumnIndex("4"));
} while(c.moveToNext());
}
TextView tv_test = (TextView) findViewById (R.id.tv_call);
tv_test.setText(text);
c.close();
db.close();
+++++++++++++++++++++++++++++++++++
با استفاده از کلاس MySQLiteAssetHelper :
mySqLtAsHlp = new MySQLiteAssetHelper(this);
final SQLiteDatabase mydb = mySqLtAsHlp.getWritableDatabase();
try{
Cursor c = mydb.rawQuery("SELECT 4 FROM "+ TABLENAME + "WHERE rowid='3'",null);
if (c.moveToFirst()) {
do{
text= c.getString(c.getColumnIndex("4"));
TextView tv_test = (TextView) findViewById (R.id.tv_call);
tv_test.setText("text");
} while(c.moveToNext());
}
c.close();
mydb.close();
}catch(Exception e){ }
کلاس MySQLiteAssetHelper :
package com.codegostarniloo.negar;
import android.content.Context;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
import com.readystatesoftware.sqliteasset.SQLiteAssetHelper;
public class MySQLiteAssetHelper extends SQLiteAssetHelper {
private static final String DATABASE_NAME = "negar.db";
private static final int DATABASE_VERSION = 1;
public MySQLiteAssetHelper(Context context ){
super(context, DATABASE_NAME, null, DATABASE_VERSION);
{
{