Intereting Posts
Как я могу инициировать HTTP-запрос для Android-ПК через USB? Убит ли Android каждый сервис или весь процесс? Как удалить встроенную поддержку проекта Android в eclipse, потому что eclipse показывает ошибки в jni? Общие настройки Vs Sql Lite База данных Android RecyclerView с CardView – показать карты в стеке (не список) Последние инструменты ADT и sdk установлены, но все еще запрашиваются последние инструменты sdk Как заменить словарь Android нашим пользовательским словарем? Android Phone Call UI – Изменить Проблемы с отображением недостающих стилей после каждого обновления Изменение HTML в WebView программно Как установить высоту элемента списка настраиваемого списка …? Настройка по умолчанию Theme.AppCompat.Dialog.Alert с android.support.v7.app.AlertDialog Android Ndk Basic: Справка относительно родной строки OnMeasure пользовательский просмотр пояснение Возврат RESULT_ERROR_GENERIC_FAILURE при отправке смс с использованием Sms Manager в android

Как SQLite на Android обрабатывает длинные строки?

Мне интересно, как реализация SQLite SQLite обрабатывает длинные строки. Читая из онлайн-документации по sqlite, он сказал, что строки в sqlite ограничены 1 миллионом символов. Мои строки определенно меньше.

Я создаю простое приложение RSS, и после разбора html-документа и извлечения текста у меня возникла проблема с сохранением его в базе данных. У меня есть 2 таблицы в базе данных, feeds и articles . RSS-каналы правильно сохраняются и извлекаются из таблицы feeds , но при сохранении в таблице articles logcat говорит, что он не может сохранить извлеченный текст в свой столбец. Я не знаю, создают ли другие столбцы проблемы, не упоминая о них в logcat.

Мне интересно, так как текст из статьи в Интернете – это такие признаки, как (,,,), возникающие проблемы. Является ли Android автоматическим выходом из них, или я должен это делать. Я использую метод для вставки, аналогичный Один в учебнике по блокноту:

 public long insertArticle(long feedid, String title, String link, String description, String h1,tring h2, String h3, String p, String image, long date) { ContentValues initialValues = new ContentValues(); initialValues.put(KEY_FEEDID, feedid); initialValues.put(KEY_TITLE, title); initialValues.put(KEY_LINK, link); initialValues.put(KEY_DESCRIPTION, description ); initialValues.put(KEY_H1, h1 ); initialValues.put(KEY_H2, h2); initialValues.put(KEY_H3, h3); initialValues.put(KEY_P, p); initialValues.put(KEY_IMAGE, image); initialValues.put(KEY_DATE, date); return mDb.insert(DATABASE_TABLE_ARTICLES,null, initialValues); } 

Столбец P предназначен для выделенного текста, h1, h2 и h3 для заголовков со страницы. Logcat сообщает об ошибке только столбец p. Таблица создается со следующим выражением:

 private static final String DATABASE_CREATE_ARTICLES = "create table articles( _id integer primary key autoincrement, feedid integer, title text, link text not null, description text," + "h1 text, h2 text, h3 text, p text, image text, date integer);"; 

Поскольку Android использует SQLite в качестве бэкэнд, все поля имеют переменную длину. Предел длины поля sqlite по умолчанию – 1 миллиард символов, но андроид, возможно, изменил это.