2014-12-11 2 views
0

Привет Я создаю вспомогательный файл sqlite для моего проекта Android. Я нашел несколько руководств по этому поводу, но у меня возникла проблема с извлечением значений из базы данных sqlite. Я получаю следующее сообщение об ошибке: «Не удается разрешить Конструктор»метод обновления sqlite с использованием курсора

Event getEvent(int id) { 
    SQLiteDatabase db = this.getReadableDatabase(); 

    Cursor cursor = db.query(TABLE_EVENTS, new String[] { KEY_ID, KEY_EVENTNAME, KEY_EVENTTIME, 
      KEY_EVENTDATE, KEY_EVENTLOCATION, KEY_EVENTADDRESS1, KEY_EVENTADDRESS2, KEY_EVENTCITY, KEY_EVENTSTATE, KEY_EVENTZIP, KEY_EVENTTYPE }, 
      KEY_ID + "=?", new String[] {String.valueOf(id)}, null, null, null, null); 

    if (cursor != null) 
     cursor.moveToFirst(); 

    Event event = new Event(Integer.parseInt(cursor.getString(0)), cursor.getString(1),cursor.getString(2),cursor.getString(3),cursor.getString(4), 
      cursor.getString(5), cursor.getString(6),cursor.getString(7), cursor.getString(8), cursor.getString(9), 
      cursor.getString(10), cursor.getString(11)); 

    //return event 
    return event; 
} 

Ошибка в заявлении, которое начинается с события Event = новое событие ....

Я не уверен, что делать, если мне нужно a cursor.getString (n) для каждого столбца таблицы?

Любая помощь будет отличной.

Спасибо.

добавив файл событий

//empty contructor 
public Event(){ 

} 

public Event(int id, String _eventName, String _eventTime, String _eventDate, String _eventLocation, String _eventAddress1, String _eventAddress2, String _eventCity, String _eventState, int _eventZip, String _eventType) { 
    this._id = id; 
    this._eventName = _eventName; 
    this._eventTime = _eventTime; 
    this._eventDate = _eventDate; 
    this._eventLocation = _eventLocation; 
    this._eventAddress1 = _eventAddress1; 
    this._eventAddress2 = _eventAddress2; 
    this._eventCity = _eventCity; 
    this._eventState = _eventState; 
    this._eventZip = _eventZip; 
    this._eventType = _eventType; 
} 

public Event(String _eventName, String _eventTime, String _eventDate, String _eventLocation, String _eventAddress1, String _eventAddress2, String _eventCity, String _eventState, int _eventZip, String _eventType) { 
    this._eventName = _eventName; 
    this._eventTime = _eventTime; 
    this._eventDate = _eventDate; 
    this._eventLocation = _eventLocation; 
    this._eventAddress1 = _eventAddress1; 
    this._eventAddress2 = _eventAddress2; 
    this._eventCity = _eventCity; 
    this._eventState = _eventState; 
    this._eventZip = _eventZip; 
    this._eventType = _eventType; 
} 
+0

Просьба вставить конструктор событий. BTW: Лучшим способом получить значение столбца является 'cursor.getString (cursor.getColumnIndexOrThrow (YOUR_KEY));' –

+0

oh dear, 'Can not resolve constructor' означает, что компилятор, дождаться его, дождаться его, не может разрешить конструктор , – Selvin

+0

@PetrDuchek Я добавил свой конструктор событий. Спасибо, я попробую. – hozdaman

ответ

0

Спасибо @Selvin и @Pier Это было частью проблемы у меня было слишком много параметров, а другая часть была я не понимаю, что вам нужно cursor.getInt() вместо cursor.getString для целых чисел.

Еще раз спасибо

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