Страница 10 из 11

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 15 май 2015, 19:41
doter.ua
wtor писал(а):
Foenix писал(а):какие логи, где, для какого показа?
Не обязательно, это для отладки.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 15 май 2015, 20:22
Foenix
та не, это чисто для показа.
Из готового приложения их вообще лучше убирать в целях конспирации и быстродействия

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 15 май 2015, 20:47
doter.ua
Foenix писал(а):та не, это чисто для показа.
Из готового приложения их вообще лучше убирать в целях конспирации и быстродействия
Life's too short for remove logs.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 29 май 2015, 15:09
Радислав Гандопас
Чем отличается String[]name от String name[]?

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 29 май 2015, 15:59
doter.ua
Радислав Гандопас писал(а):Чем отличается String[]name от String name[]?
Ничем. http://stackoverflow.com/a/129188

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 23 июн 2015, 18:43
msv_serg

Код: Выделить всё

for (String cn : c.getColumnNames()) {
            str = str.concat(cn + " = "
                + c.getString(c.getColumnIndex(cn)) + "; ");
          }
я не пойму одного, зачем сначала надо узнавать индекс столбца по его имени c.getColumnIndex(cn)), а потом по полученному индексу находить значение столбца? неужели нельзя сразу по имени столбца узнавать его значение???

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 24 июн 2015, 00:21
Foenix
нет

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 14 июл 2015, 20:05
dmitry_n
Здравствуйте. В уроке был упомянута только функция count(*) as Count, а как записать другие функции (например, макс. или мин.) в этой View?

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 04 авг 2015, 13:31
alex1
dmitry_n писал(а):Здравствуйте. В уроке был упомянута только функция count(*) as Count, а как записать другие функции (например, макс. или мин.) в этой View?
Почитайте про SQL, там несложно.
"max(people)" можно написать, например, или "min(people)", "avg(people)".
Без кавычек ес-но.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 авг 2015, 19:42
TheCoder
Как можно сделать запрос в БД с between для дат? Неважно в каком формате хранятся даты (String/int/long).

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 22 авг 2015, 00:08
Foenix
да нет, как раз таки важно как хранятся даты. Храни в целочисленном виде и выбирай.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 08:40
Батька Андройд
Здравствуйте. У меня есть БД в которой есть колонка с названием например зарплаты и мне нужно проверить есть ли в БД строка в которой значение в колонке зарплаты будет равна тому что я введу в EditText. Попытался реализовать это следующем образом:

- считал из EditText значение
- методом query считал из БД с условием, что значение в нужном мне столбике должно быть равно тому что я ввел в edittext
(selection = "зарплаты = ?") ну и в массив значений для условия то что ввел в edittext
- все это присвоил объекту cursor конечно

Я предположил что если данного значения зарплаты в БД не будет, то cursor = null, но он не null и при этом при попытке посмотреть что в нем ничего не показывает.
Подскажите как вообще реализуется проверка на то есть ли строка с определенным значением в определенном столбце в базе данных?

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 15:43
Foenix
у курсора есть метод, recCount() или как-то так, проверяй вначале на нул, потом на кол-во записей.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 18:00
Night_Scream
Ребят, а как можно узнать список всех созданных баз в своем приложении, созданных этим же приложением?

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 19:06
Foenix
интересно, а зачем тебе столько баз?

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 20:51
Night_Scream
Пишу приложение в котором на рабочую область можно перетаскивать различные компоненты, нужно сохранять их состояние\размер\координаты и другое...
При запуске можно создать новый проект и указать ему имя, можно загрузить ранее созданный.
Вот и задался вопросом как и где всё это хранить...
В SharedPreferences можно хранить только ключ - значение, нет вложенностей как например в layout файлах, ну допустим пользователь создал 20 элементов на рабочей области и у каждого элемента по 10 параметров, всё это сохранить а потом достать без группировки никак нормально.

Решил писать в SQLite, всё вроде достаточно просто, подумал делать название нового проекта=название базы, в базе нужные таблицы с нужными полями, удалять просто через this.deleteDatabase("name").
Так и пришел к выводу что нужен список баз в папке databases, пользователь выбрал, база загрузилась.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 21:34
doter.ua
Проще хранить в общей таблице, добавив поле проектИД. Еще есть ленивый варик с JSON, но про него не расскажу, учи БД)

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 21 окт 2015, 21:53
Night_Scream
Про ID была такая мысль конечно, но по базе как то проще, файл этот экспортнул и перенес целый проект, удобно.
С БД у меня на уровне уверенного пользователя, админю несколько серверов MySQL...
С JSON в принципе мысль для SharedPreferences, но ...

Накидал код, взгляните, что может пойти не так (напомню, цель найти все созданные базы приложением)

Код: Выделить всё

String pathDb = "data/data/" + getApplicationContext().getPackageName() + "/" + "databases/";
        File[]fList;
        File f = new File(pathDb);
        fList = f.listFiles();
        if(f.length()>0) {
            for (int i = 0; i < fList.length; i++) {
                if (fList[i].isFile()) Log.d("scream", "Файл - " + fList[i].getName());
            }
        }else{
            Log.d("scream","нет файлов");
        }
Показывает все файлы в папке, есть 2 проблемки.
1) нет расширения.
2) андроид создает на базу по 2 файла nameBD и nameBD-journal их тоже надо будет фильтровать.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 22 окт 2015, 00:57
Foenix
тебе правильно сказали как делать надо
несколько баз заводить при такой задаче очень глупо. Кто-то увидит у тебя такое - на работу не возьмет.

Re: Урок 36. SQLite. Подробнее про метод query. Условие, сор

Добавлено: 22 окт 2015, 08:01
Night_Scream
Foenix писал(а):тебе правильно сказали как делать надо
несколько баз заводить при такой задаче очень глупо. Кто-то увидит у тебя такое - на работу не возьмет.
Понял, спасибо.