2013-11-29 2 views
0
SQLiteDatabase db = SQLiteDatabase.openDatabase("/data/data/com.example.abc2/databases/DB_BusData", null, 0); 
    Cursor c = db.rawQuery("SELECT * FROM Tbl_Driver", null); 
    String username = c.getString(0).trim(); 
    String password = c.getString(1).trim(); 
    //Log.d(username, "try"); 
    db.close(); 

это подключение к моей DB_BusData в папке моих активов,
ничего плохого с моим кодом?Как прийти не может прочитать данные из SqlLiteDatabase в Android

p/s: Мне не нравится использовать DatabaseHelper.java или что-то слишком сложное. я просто хочу просто подключение к базе данных и привязать его к моей Spinner

+0

Непонятная почта. – Subbu

+2

'DatabaseHelper.java' - это SQLite ** Open ** Helper, который полезен, если вам нужно открыть файл базы данных определенным образом (включая обновление схемы базы данных). Это не должно быть сложной задачей, и все, кто ставит код для доступа к данным в подклассах, делают это неправильно. – zapl

ответ

2

Вы должны переместить курсор в позицию, прежде чем вы можете прочитать из него:

SQLiteDatabase db = SQLiteDatabase.openDatabase("/data/data/com.example.abc2/databases/DB_BusData", null, 0); 
Cursor c = db.rawQuery("SELECT * FROM Tbl_Driver", null); 
if(c.moveToFirst()) { 
    String username = c.getString(0).trim(); 
    String password = c.getString(1).trim(); 
    //Log.d(username, "try"); 
} 
db.close(); 

P.S. Эта база данных не в вашей папке assets. Я предполагаю, что ваш файл находится на локальном устройстве по указанному вами пути и что он успешно открывается

+0

@RGrahim Любые идеи для замены индекса столбца именем столбца? –

+1

'c.getColumnIndex (" UsernameField ")' будет возвращать индекс указанного столбца – CodingIntrigue

+0

, как сделать мою базу данных в моей папке с активами? может показать, как привязать данные к Spinner? –

Смежные вопросы