Главная » Разработка для Android » Введение в SQLite

0

SQLite — это система управления реляционными базами данных, кото- рая хорошо себя зарекомендовала. Ее основные характеристики:

свободная;

соответствует  стандартам;

легковесная;

одноуровневая.

Данная система — это компактная библиотека, написанная на языке C, она составляет  часть стека программного обеспечения,  который поставля- ется вместе с Android.

Поскольку SQLite  реализована в виде библиотеки, а не как отдельный исполняемый процесс, каждая база данных считается частью приложения, которое ее создало. Благодаря этому минимизируется число внешних  за- висимостей, уменьшаются задержки, упрощаются синхронизация и блоки- рование при выполнении транзакций.

SQLite зарекомендовала себя в качестве чрезвычайно надежной системы баз данных, которая используется во многих бытовых электронных устрой- ствах, включая некоторые MP3-проигрыватели, iPhone  и iPod Touch.

SQLite — мощная и легковесная, отличается от многих обычных движков баз данных отсутствием  типизации каждого столбца. Это значит, что зна- чения в столбце не обязаны иметь один и тот же тип. Вместо этого каждое значение  типизируется отдельно  для каждой  строки. В связи  с этим нет необходимости проверять типы при занесении  или извлечении данных в контексте каждого столбца в строке.

Для более полного ознакомления с SQLite, включая ее сильные и слабые стороны, посетите официальный сайт http://www.sqlite.org/.

Курсоры и класс ContentValues

Класс ContentValues используется для добавления новых строк в табли- цу. Каждый  объект этого класса представляет собой одну строку таблицы и выглядит  как ассоциативный массив с именами столбцов и значениями, которые им соответствуют.

В Android  запросы  к базе данных возвращают  объекты класса Cursor. Вместо того чтобы извлекать данные и возвращать копию значений, Курсоры

ссылаются на результирующий набор исходных данных. Курсоры позволяют управлять текущей позицией (строкой) в результирующем наборе данных, возвращаемом при запросе.

Класс Cursor содержит немало возможностей для навигации (но не огра- ничивается только ими):

moveToFirst — перемещает  курсор  на первую строку  в результате запроса;

moveToNext  — перемещает курсор на следующую строку;

moveToPrevious — перемещает курсор на предыдущую строку;

getCount — возвращает  количество  строк в результирующем наборе данных;

getColumnIndexOrThrow — возвращает индекс для столбца с указан- ным именем (выбрасывает исключение, если столбец с таким именем не существует);

getColumnName — возвращает  имя столбца с указанным  индексом;

getColumnNames — возвращает массив строк, содержащий имена всех столбцов в объекте Cursor;

moveToPosition — перемещает курсор на указанную  строку;

getPosition — возвращает  текущую позицию курсора.

Android предоставляет удобный механизм, который упрощает управле- ние Курсорами в ваших Активностях. Метод startManagingCursor объединяет жизненный цикл объекта Cursor с Активностью, из которой он был вызван. Когда вы закончили работу с Курсором, вызовите метод stopManagingCursor, принцип работы которого понятен из его названия.

Далее в этой главе вы научитесь делать запросы к базе данных и извле- кать из результирующих курсоров конкретные значения  строк/столбцов.

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии