Ivan
а просто drop table?
Вадим
какой именно запрос не было написано
Проксимов
Denis
Рум
Вадим
SQLiteDatabase db = this.getWritableDatabase();
db.delete(TABLE_NAME, null, null);
db.close();
François Leclercq
Проксимов
Ivan
всмысле в строка sql писать удобнее?
Ivan
чота сомневаюсь
Ivan
Denis
Все там ок
Вадим
François Leclercq
а ты не ох...л?
а ты? или читать что пишут о проблеме уже не тренд?
Вадим
Вадим
где ты бросал его?
François Leclercq
где ты бросал его?
Привет всем. Работаю со стандартным API базы данных - sqlite или что там. при каждой загрузке данных из сети таблица пополняется уже существующими данными - засчет автоинкремента, наверное. DROP table IF EXISTS с какого-то хрена не работает. единственный работающий костыль - физически удалять базофайл при каждому обращению к ссети
самое первое
François Leclercq
Что-то я очень сомневаюсь что удалять файл базы - это адекватный ход
Denis
Denis
А не простыню бесполезного текста
Вадим
François Leclercq
https://pastebin.com/mUAPXayS
François Leclercq
https://pastebin.com/kmen5Wt2
Ivan
у тебя в getEmployes курсор не закрывается
Ivan
private boolean dbExists(SQLiteDatabase mDb) {
Cursor cursor = mDb.query(TABLE_NAME, null, null, null, null, null, null);
if (cursor.getCount() > 0) {
cursor.close();
return true;
} else {
cursor.close();
return false;
}
}
François Leclercq
Ivan
серьезно?
Alexey
Да и он апгрейд не вызывается, версия базы постоянно 1. Товарищ кажется даже путает понятие базы и таблицы
François Leclercq
серьезно?
это по крайней мере работает и не плодит базы. поэтому и пишу
Denis
Ivan
у меня есть подозрение что база тут вообще нафиг ненужна
Ivan
можно просто сохранять в json или типа того.
François Leclercq
это ТЗ
Ivan
ненадо писать три вложеных ифа если у них общее тело
Ivan
юзай &&
François Leclercq
ладно. а с таблицей что делать? при каждом хождении в сеть апдейтить версию?
Ivan
я что то в шары долблюсь а что такое TALE_NAME
Ivan
где оно задается
François Leclercq
это константа
Ivan
а что про данные говорится?
Konstantin
Ivan
ну я так думаю у тебя onupgrade никогда не вызывается
François Leclercq
Anonymous
Ни как не могу найти багу в коде. Клавиатура в EditText не работает в моем кастомном Dialogе. Вот код https://pastebin.com/UALnKJWL
François Leclercq
если надо очищать, есть метод delete from table_name
Не будет ли это таким же костылем как физический дроп? Имхо с проектировкой таблицы что-то не так. Я не знаток баз, но может без автоинкремента можно обойтись? Тогда как сопоставлять данные?
Ivan
а оно тебе надо?
Ivan
ну вообще дроп таблиц это костыль
Ivan
удаление данных это нормально
Ivan
хотя чаще используют скрытие а не удаление
Ivan
но это ньюансы уже
Konstantin
Ivan
да можно тупо вызвать delete from
Ivan
а потом insert
Konstantin
таблицу лучше не создавать и удалять каждый раз, а только при первом запуске приложения
Konstantin
тебе нужно удалять данные внутри таблицы без ее пересоздания при синхронизации с сервером
Konstantin
насколько я тебя понял
Ivan
небудет
François Leclercq
в общем, да
Ivan
delete не продуцирует ошибки
Ivan
https://stackoverflow.com/questions/11700686/error-in-sqlite-drop-table-if-exists-android/11700782
Ivan
ну а вообще надо logcat посмотреть
Alexey
Да блин пусть прочитает как sqldbhelper этот работает
François Leclercq
FromSi
Room не полезнее?)
Denis
Добрый вечер. Очень нуждаюсь в примере использования recycler view совместно с rx и kotlin. Буду благодарен, если кто-нибудь поделится
Konstantin
Konstantin
почитай гуайды как работать с бд
François Leclercq
лана, всем спасибо
Alex
пробовать
Alex
например, напиши 3 варианта какой-то одной задачки: один с билдерами, другой с сабкомпонентами, третий с андроид даггер
Alex
да, +1, хорошие статьи
и еще есть чат @dagger_2
François Leclercq
почитай гуайды как работать с бд
Так, ну самый главный гайд я почитал, но ответ на вопрос, можно ли кроме как костыльным ветвлением определить когда удалять все данные я не нашел
Konstantin
Alexey
Найди урок как свой инжектор написать