Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Пояснювальна записка до бакалаврської дипломної роботи на тему

Пояснювальна записка до бакалаврської дипломної роботи на тему




Сторінка5/10
Дата конвертації10.03.2017
Розмір0.51 Mb.
ТипПояснювальна записка
1   2   3   4   5   6   7   8   9   10

3 РОЗРОБКА ПРОГРАМНОЇ СИСТЕМИ




3.1 Розробка бази даних


Кожна з платформ підтримує свою базу даних. Тому це трохи ускладнює написання додатку.

Для операційної системи Windows Phone використовується база даних SQL CE. Таку базу можна створити на основі існуючих моделей.

Так як відомо всі моделі додатку, буде не важко створити базу даних через так званий Mapping. Тобто потрібно просто в моделях вказати що віднести до таблиці, що до поля, та вказати потрібні параметри для них.

Розглянемо на прикладі моделі Charity. Для того щоб вказати що це буде таблиця, потрібно над назвою класу написати [Table(Name = "Charities")] і наш додаток буде розуміти, що це таблиця з назвою Charities, та до неї можна буде звернутися через поле таблиці в DataBaseContext.

Для того щоб вказати на поле з ключем таблиці, потрібно над ним написати [Column(IsPrimaryKey = true, IsDbGenerated = false, DbType = "INT", CanBeNull = false, AutoSync = AutoSync.OnInsert)]. Так як сервер нам повертає дані з своїми ключами, то IsDbGenerated вказується як false. Але якщо його поставити в true, то база сама буде генерувати ключі для полів. Запис IsPrimaryKey = true означає що це саме поле ключа. Запис DbType = "INT" повідомляє що це поле цілочисленого типу. Та запис CanBeNull = false означає що це поле не може бути пустим. Для створення поля з текстовим типом можна використовувати "NVARCHAR(300)" або "NTEXT". Для запису розміром один біт потрібно використовувати "BIT".

Для створення зв’язків між таблицями потрібно використовувати асоціації. В моделі де повинно бути посилання на список моделей потрібно створити потрібне поле та над ним написати [Association(Storage = "_campaings", OtherKey = "CharityId", ThisKey = "Id")], а в іншій моделі над полем цієї моделі потрібно написати [Association(Storage = "_charity", ThisKey = "CharityId", OtherKey = "Id")]. Таким чином створюється зв'язок «один до багатьох». Для того щоб створити зв'язок «багато до багатьох» потрібно використовувати зв'язок «один до багатьох» в дві сторони.

Для того щоб звернутися до таблиці в базі, потрібно створити об’єкт типу DataBaseContext, і в ньому буде поле з назвою таблиці з якої нам потрібно отримати інформацію. Щоб зробити вибірку можна використовувати звичайний Linq запит.

Для Android, iOS та BlackBerry OS використовується база даних SQLite.

SQLite - це база даних з відкритими вихідними кодами, що включається за замовчуванням до складу Андроїд, iOS та BlackBerry OS. SQLite підтримує стандартні можливості реляційних баз даних - синтаксис, транзакції і prepared statements. Крім цього, SQLite вимагає дуже невеликої кількості пам'яті для роботи (приблизно 250 кб).

Використання SQLite в Андроїд, iOS та BlackBerry OS не вимагає установки БД або адміністрування. Ви вказуєте SQL-запит для роботи з БД і необхідні операції адміністрування виконуються автоматично. Робота з базами даних в Андроїд, iOS та BlackBerry OS може бути повільною через операції введення / виведення, тому всі необхідні операції рекомендується виконувати за допомогою класу AsyncTask.

SQLite підтримує типи даних TEXT (String в Java), INTEGER (long в Java) і REAL (double в Java).

Тип даних - характеристика, яку явно чи неявно надано об'єкту (змінній, функції, полю запису, константі, масиву тощо). Тип даних визначає множину припустимих значень, формат їхнього збереження, розмір виділеної пам'яті та набір операцій, які можна робити над даними.
Всі інші типи даних повинні бути сконвертовані в один з цих перед збереженням в базу даних. SQLite сам по собі не перевіряє, чи відповідають записані дані типу даних відповідного стовпця, ви можете записати ціле число в стовпець з типом Integer.

Якщо додаток створює базу даних, вона зберігається в папці «DATA / data / APP_NAME / databases / FILENAME». DATA - це шлях, що повертається методом Environment.getDataDirectory (), APP_NAME - ім'я вашого додатку і FILENAME - це ім'я, яке ви даєте базі даних при створенні. Environment.getDataDirectory () зазвичай повертає SD-карту в якості місця.

База даних SQLite доступна тільки додатком, яке створює її. Якщо ви хочете дати доступ до даних іншим програмам, ви можете використовувати ContentProvider.

Для роботи з БД зазвичай створюється клас-нащадок SQLightOpenHelper. У цьому класі слід перевизначити методи onCreate () для створення БД і onUpgrade () для оновлення БД в разі змін у схемі бази даних. Обидва методи працюють з об'єктом SQLiteDatabase.

SQLiteOpenHelper надає методи getReadableDatabase () і getWriteableDatabase () для доступу до об'єкта SQLiteDatabase, який дозволяє читати і писати в БД.

Для первинного ключа БД завжди необхідно використовувати ідентифікатор «_id», тому що деякі функції Android, iOS та BlackBerry OS відповідають цьому стандарту.

Клас SQLiteDatabase надає методи insert (), update (), delete () і execSQL () (який дає можливість безпосередньо виконувати SQL-запити). Об'єкт ContentValues ​​дозволяє визначити ключі / значення для вставки і оновлення даних.

Запити можуть бути створені або через метод rawQuery (), що приймає SQL, або метод query (), що надає інтерфейс для вказівки динамічних даних SQLiteQueryBuilder. SQLiteQueryBuilder схожий з інтерфейсом провайдера даних (Сontent provider), тому зазвичай він використовується для роботи з провайдерами даних.

Провайдер (від англ. provider - постачальник) - компанія, постачальник будь-яких послуг.

Запит до БД завжди повертає «курсор», що представляє собою результат запиту. Щоб отримати число елементів у запиті, ми можемо скористатися методом getCount (). Для переміщення між записами в результаті використовуються методи moveToFirst () і moveToNext ().

Результат, пі́дсумок, (заст. ску́ток, вислід) - кінцевий наслідок послідовності дій. Можливі результати містять перевагу, незручність, вигоду, збитки, цінність і перемогу. Результат є етапом діяльності, коли визначено наявність переходу якості в кількість і кількості в якість.
Переміщення - зміна положення якогось матеріального об'єкту. В фізиці - це переміщення фізичного тіла. Переміщенням також називають вектор, який характеризує цю зміну. Має властивість адитивності. Абсолютна величина переміщення, тобто довжина відрізка, що сполучає початкову й кінцеву точку, вимірюється в метрах у системі СІ та в сантиметрах у системі СГС.
Метод isAfterLast () дозволяє перевірити, чи є ще дані в результаті.

Якщо вам потрібно вибрати всі дані, використовуйте null в умові where (null можна вказати замість будь-якого з параметрів запиту, наприклад groupBy, orderBy і т.п.). Взагалі умова where вказується без самого слова where, наприклад: «_id = 19 and summary =?»



1   2   3   4   5   6   7   8   9   10