@serrrezhka

По какой причине не выводится столбец «createdDate» из бд?

Получаю данные в слое репозитория:

/**
     * Возвращает заказ по указанному идентификатору.
     *
     * @param id идентификатор заказа
     * @return заказ
     */
    @Override
    public Order findOneById(int id) {
        Order order = null;

        Cursor cursor = database.query("orders",
                null,
                "_id = ?",
                new String[] {String.valueOf(id)},
                null, null, null);

        if(cursor.moveToFirst()) {
            int idIndex = cursor.getColumnIndex("_id");
            int dateAddIndex = cursor.getColumnIndex("createdDate");
            int nameIndex = cursor.getColumnIndex("name");
            int priceIndex = cursor.getColumnIndex("price");

            order = new Order(cursor.getInt(idIndex), cursor.getString(dateAddIndex), cursor.getString(nameIndex), BigDecimal.valueOf(cursor.getDouble(priceIndex)));
        }

        return order;
    }


Пытаюсь получить данные и вывести во фрагмент для проверки:

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);

        TextView textHome = view.findViewById(R.id.text_home);

        OrderServiceImpl orderService = new OrderServiceImpl();
//        orderService.create(new Order("13.12.2002", "Заказ 1", BigDecimal.valueOf(1.2)));
        Order order = orderService.findOneById(1);
        textHome.setText(order.getAddDate());

    }


Все данные корректно выводятся кроме "createdDate".
Дамп бд:
652feb021cf90234728897.png
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ответы на вопрос 1
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
У Вас тип столбца - текст, а Вы из него пытаетесь int вытащить!
createdDate TEXT NOT NULL
Пробуйте так
String dateAddIndex = cursor.getColumnIndex("createdDate");

PS. И не удивлюсь, что в этом месте у вас эксепшен может быть...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы