метод qwery и создание бд

SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
Ответить
Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

метод qwery и создание бд

Сообщение alexmx » 08 июн 2014, 19:50

Доброго времени суток.
Что происходит если отправить запрос через qwery в пустую таблицу sqlite?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: метод qwery и создание бд

Сообщение Foenix » 08 июн 2014, 20:09

А что должно происходить? ПРоисходит то же самое что и с непустой таблицей, но результат вернется - пустой курсор
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

Re: метод qwery и создание бд

Сообщение alexmx » 08 июн 2014, 20:17

Где то накасячил:
06-08 23:16:28.609: E/AndroidRuntime(21430): android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.database.AbstractCursor.checkPosition(AbstractCursor.java:418)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:136)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.database.AbstractWindowedCursor.getString(AbstractWindowedCursor.java:50)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.database.CursorWrapper.getString(CursorWrapper.java:114)
06-08 23:16:28.609: E/AndroidRuntime(21430): at ru.systemtehnolodgi.stav.PlaceholderFragment.setNullLine(PlaceholderFragment.java:92)
06-08 23:16:28.609: E/AndroidRuntime(21430): at ru.systemtehnolodgi.stav.PlaceholderFragment.onLoadFinished(PlaceholderFragment.java:65)
06-08 23:16:28.609: E/AndroidRuntime(21430): at ru.systemtehnolodgi.stav.PlaceholderFragment.onLoadFinished(PlaceholderFragment.java:1)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.app.LoaderManagerImpl$LoaderInfo.callOnLoadFinished(LoaderManager.java:482)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.app.LoaderManagerImpl$LoaderInfo.onLoadComplete(LoaderManager.java:450)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.content.Loader.deliverResult(Loader.java:143)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.content.CursorLoader.deliverResult(CursorLoader.java:113)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.content.CursorLoader.deliverResult(CursorLoader.java:43)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.content.AsyncTaskLoader.dispatchOnLoadComplete(AsyncTaskLoader.java:254)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.content.AsyncTaskLoader$LoadTask.onPostExecute(AsyncTaskLoader.java:91)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.os.AsyncTask.finish(AsyncTask.java:631)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.os.AsyncTask.access$600(AsyncTask.java:177)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.os.Handler.dispatchMessage(Handler.java:99)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.os.Looper.loop(Looper.java:137)
06-08 23:16:28.609: E/AndroidRuntime(21430): at android.app.ActivityThread.main(ActivityThread.java:4921)
06-08 23:16:28.609: E/AndroidRuntime(21430): at java.lang.reflect.Method.invokeNative(Native Method)
06-08 23:16:28.609: E/AndroidRuntime(21430): at java.lang.reflect.Method.invoke(Method.java:511)
06-08 23:16:28.609: E/AndroidRuntime(21430): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
06-08 23:16:28.609: E/AndroidRuntime(21430): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
06-08 23:16:28.609: E/AndroidRuntime(21430): at dalvik.system.NativeStart.main(Native Method)

Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

Re: метод qwery и создание бд

Сообщение alexmx » 08 июн 2014, 20:21

Вот строка на которую тычет:
[syntax=java]String posit = cLine.getString(cLine.getColumnIndex(CATALOG_NAME));[/syntax]

Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

Re: метод qwery и создание бд

Сообщение alexmx » 08 июн 2014, 20:22

Получаю строку из null. Из за этого?

Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

Re: метод qwery и создание бд

Сообщение alexmx » 08 июн 2014, 20:59

А как проверить пустой курсор или нет??? Пробовал так if(cursor != null), но он оказывается не совсем пустой

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: метод qwery и создание бд

Сообщение Foenix » 08 июн 2014, 21:08

я как-то не задумывалась над этим. Вначале проверяю нулл или нет, а потом всегда
if ( cursor.moveToFirst() ) {
//значит записи есть
} else {
// нету
}
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: метод qwery и создание бд

Сообщение Foenix » 08 июн 2014, 21:09

еще у курсора есть getCount()
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: метод qwery и создание бд

Сообщение Foenix » 08 июн 2014, 21:10

alexmx писал(а):А как проверить пустой курсор или нет??? Пробовал так if(cursor != null), но он оказывается не совсем пустой
эту проверку ставлю когда закрываю курсор.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
alexmx
Сообщения: 193
Зарегистрирован: 10 мар 2014, 08:14

Re: метод qwery и создание бд

Сообщение alexmx » 09 июн 2014, 13:57

Мне просто точно нужно знать что курсор пустой, я ради интереса после запроса получив пустой курсор вставил его в system.out.println , в итоге получил в консоли нечто похожее на ссылку на contentresolver. Вывод - он приходит не совсем пустой. В общем getCount() мне в помощь)))) Сяпоньки тебе))))

Ответить