Difference between revisions of "Kexi/Tutorials/Importing SQLite database into Kexi/uk"

Jump to: navigation, search
(Created page with "*Введіть назву кожного зі стовпчиків зі схеми, наданої на кроці 3. *Скористайтеся редактором вла...")
(Created page with "*Створює звіт з файла ''oaklandweather.kexi'' у так званому форматі дампу SQL (текстовому представленні) за д...")
 
(9 intermediate revisions by the same user not shown)
Line 94: Line 94:
  
  
{{Note|A hint: on Linux you can copy column names a bit faster by double clicking on the name in the table schema above, double clicking on a subsequent empty cell in the Field Caption column of the Table designer, and then pressing the middle mouse button to paste the previously made selection.}}
+
{{Note_(uk)|Підказка: у Linux ви можете скопіювати назви стовпчиків трохи швидше, якщо двічі клацнете на назві у схемі таблиці, наведеній вище, двічі клаценет на наступній порожній комірці у стовпчику «Заголовок поля» на панелі дизайнера таблиць, а потім клацнете середньою кнопкою (коліщатком), щоб вставити раніше позначений текстовий фрагмент.}}
  
{{Note|It is possible to create the table in Kexi using text editor and a SQL command but it would be reserved for more advanced users. Given there is enough interest instructions can be published.}}
+
{{Note_(uk)|У Kexi таблицю можна створити за допомогою текстового редактора та команди SQL, але цей спосіб може бути зручнішим лише для досвідчених користувачів. Якщо ви цікавитеся цим питанням, будь ласка, повідомте про це на сторінці обговорення.}}
  
6. Save the table's design with the ''Archive'' caption. Physical table's name will be set by Kexi as ''archive'' what matches the table name in the ''oaklandweather.sdb'' file.
+
6. Збережіть компонування таблиці із заголовком ''Archive''. Назву фізичної таблиці буде визначено у Kexi як ''archive'', що відповідає назві тбалиці у файлі ''oaklandweather.sdb''.
  
Note that after saving the design you can again open it for designing. The only remark is that upon saving the altered table design you would loose any data in the table, if there is any, so it is better to make sure the table design is perfect before any data is inserted into the table.
+
Зауважте, що після збереження компонування ви знову можете відкрити його для редагування. Єдиною проблемою може бути те, що після збереження зміненого компонування таблиці ви втратите усі дані у ній, якщо такі були. Тому варто переконатися, що компонування таблиці є ідеальним, перш ніж вставляти будь-які дані до таблиці.
  
Make sure there are all the 52 columns have been inserted in the ''archive'' table design and that all are in correct order and have proper type. Any difference can make the resulting ''archive'' table inaccessible for Kexi.
+
Переконайтеся, що вставлено усі 52 стовпчики у компонуванні таблиці ''archive'', і що усі ці дані правильно впорядковано і пов'язано із належним типом. Будь-які помилки можуть призвести до того, що таблиця ''archive'' буде непрацездатною у Kexi.
  
 
Щойно усі описані дії буде виконано, ви можете закрити вікно програми Kexi.  
 
Щойно усі описані дії буде виконано, ви можете закрити вікно програми Kexi.  
  
The Kexi file without data is available [http://kexi-project.org/download/tests/oaklandweather-empty.kexi here] for reference.
+
Файл Kexi без даних, для порівняння, можна отримати [http://kexi-project.org/download/tests/oaklandweather-empty.kexi тут].
  
7. So far the ''oaklandweather.kexi'' file has no data in it. Now you may be ready to execute the final command to import the data. In the Konsole terminal enter to the directory where the ''oaklandweather.sdb'' and ''oaklandweather.kexi'' files exist or add proper paths to them. Then type (or paste) the command:
+
7. Поки у файлі ''oaklandweather.kexi'' немає даних. Але ми готові виконати останню команду для імпортування даних. У емуляторі термінала Konsole перейдіть до каталогу, де зберігаються файли ''oaklandweather.sdb'' та ''oaklandweather.kexi'' або вкажіть належні шляхи до цих файлів. Далі, введіть (або вставте) таку команду:
  
 
  sqlite3 oaklandweather.sdb .dump | egrep -e "^(BEGIN|INSERT|ANALYZE|COMMIT)" | sqlite3 oaklandweather.kexi
 
  sqlite3 oaklandweather.sdb .dump | egrep -e "^(BEGIN|INSERT|ANALYZE|COMMIT)" | sqlite3 oaklandweather.kexi
Line 114: Line 114:
 
Це працює ось так:
 
Це працює ось так:
  
*Reports the ''oaklandweather.kexi'' file to a so-caled SQL dump (a text representation) using the sqlite3 console app.
+
*Створює звіт з файла ''oaklandweather.kexi'' у так званому форматі дампу SQL (текстовому представленні) за допомогою консольної програми sqlite3.
*Removes from this dump any lines that do not begin with BEGIN, INSERT, ANALYZE or COMMIT. This is needed because we are only interested in data of the table, not in creating a new table.
+
*Вилучає з цього дампу будь-які рядки, які починаються з BEGIN, INSERT, ANALYZE або COMMIT. Цю дію слід виконати, оскільки нам слід отримтаи лише дані у таблиці, а не створити нову таблицю.
*Directs the resulting output to a ''sqlite3'' console app again, which receives all the commands from the output and applies them to the ''oaklandweather.kexi'' database file. The last command applied is COMMIT.
+
*Спрямовує виведені дані до консольної програми ''sqlite3'' ще раз. Програма отримує усі команди з виведених даних і застосовує їх до файла бази даних ''oaklandweather.kexi''. Останньою застосованою командою є COMMIT.
  
  
8. Done! You can open the ''oaklandweather.kexi'' database project file in Kexi and open the 'archive' table in it to see all the data.
+
8. Готово! Ви можете відкрити файл проекту бази даних ''oaklandweather.kexi'' у Kexi, відкрити таблицю 'archive' і бачити усі дані.
  
  
The resulting Kexi file is available [http://kexi-project.org/download/tests/oaklandweather.kexi.xz here] (compressed to 650KB using xz).
+
Файл-результат роботи Kexi можна отримати [http://kexi-project.org/download/tests/oaklandweather.kexi.xz тут] (стиснено до 650 кБ за допомогою xz).
  
 
[[Category:Офісні програми/uk]]
 
[[Category:Офісні програми/uk]]
 
[[Category:Підручники/uk]]
 
[[Category:Підручники/uk]]

Latest revision as of 13:01, 19 May 2019

Other languages:
dansk • ‎English • ‎українська
Note-box-icon.png
 
Зауваження
Цим підручником можна скористатися для роботи з Kexi 2.x та новішими версіями. Автором підручника є Jarosław Staniek (обговорення).


Підручник було створено для задоволення запиту щодо допомоги на форумі Kexi. Будемо раді будь-яким коментарям у відповідній гілці обговорення.

Зауваження: існує і альтернативний підхід: https://forum.kde.org/viewtopic.php?f=220&t=139243

Вступ

За допомогою цього підручника ви зможете ознайомитися з процедурою перетворення файла вхідних даних, oaklandweather.sdb, у стандартному форматі SQLite3 з однією таблицею даних і створити проект бази даних, яким можна буде скористатися за допомогою Kexi.

Файл вхідних даних SQLite3 можна отримати звідси (стиснуто до 600 кБ за допомогою xz, містить загальнодоступні дані).

Кроки

1. У вікні емулятора термінала Konsole скористайтеся консольною програмою sqlite3 для перегляду схеми (програма з графічним інтерфейсом, Sqliteman, не здатна показувати схеми):

sqlite3 oaklandweather.sdb

2. Далі, введіть команду:

.schema

3. У відповідь буде показано схему для однієї таблиці archive:

CREATE TABLE archive (
   dateTime INTEGER NOT NULL UNIQUE PRIMARY KEY,
   usUnits INTEGER NOT NULL,
   interval INTEGER NOT NULL,
   barometer REAL,
   pressure REAL,
   altimeter REAL,
   inTemp REAL,
   outTemp REAL,
   inHumidity REAL,
   outHumidity REAL,
   windSpeed REAL,
   windDir REAL,
   windGust REAL,
   windGustDir REAL,
   rainRate REAL,
   rain REAL,
   dewpoint REAL,
   windchill REAL,
   heatindex REAL,
   ET REAL,
   radiation REAL,
   UV REAL,
   extraTemp1 REAL,
   extraTemp2 REAL,
   extraTemp3 REAL,
   soilTemp1 REAL,
   soilTemp2 REAL,
   soilTemp3 REAL,
   soilTemp4 REAL,
   leafTemp1 REAL,
   leafTemp2 REAL,
   extraHumid1 REAL,
   extraHumid2 REAL,
   soilMoist1 REAL,
   soilMoist2 REAL,
   soilMoist3 REAL,
   soilMoist4 REAL,
   leafWet1 REAL,
   leafWet2 REAL,
   rxCheckPercent REAL,
   txBatteryStatus REAL,
   consBatteryVoltage REAL,
   hail REAL,
   hailRate REAL,
   heatingTemp REAL,
   heatingVoltage REAL,
   supplyVoltage REAL,
   referenceVoltage REAL,
   windBatteryStatus REAL,
   rainBatteryStatus REAL,
   outTempBatteryStatus REAL,
   inTempBatteryStatus REAL
);

4. Цю таблицю слід відтворити вручну за допомогою Kexi так, щоб вона якомога точніше збігалася з початковою таблицею. На жаль, іншого способу немає — це доволі велика таблиця.

Для цього вам слід створити новий порожній проект бази даних за допомогою Kexi. Надайте проектові назву oaklandweather, щоб файл проекту Kexi називався oaklandweather.kexi. Не закривайте вікна проекту Kexi.

5. У проекті oaklandweather.kexi розпочніть створення нової таблиці.

  • Введіть назву кожного зі стовпчиків зі схеми, наданої на кроці 3.
  • Скористайтеся редактором властивостей, панель якого розташовано праворуч, щоб визначити для кожного зі стовпчиків у цій таблиці відповідний тип даних.
    • Для типів INTEGER, наприклад dateTime INTEGER у нашій схемі, виберіть тип «Ціле число» у полі «Тип даних» на панелі Дизайнера таблиць.
    • Для типів REAL, наприклад barometer REAL у нашій схемі, виберіть тип «Число з рухомою комою» у полі «Тип даних» стовпчика на панелі Дизайнера таблиць.
  • Крім того, встановіть стовпчик dateTime як основний стовпчик ключа для таблиці на панелі Редактора властивостей.
  • Також для стовпчиків usUnits та interval має бути призначено специфікацію NOT NULL. Щоб призначити цю специфікацію у Kexi, встановіть властивість «Обов'язкова» у значення «Так»для цих стовпчиків на панелі Редактора властивостей.


Note-box-icon.png
 
Зауваження
Підказка: у Linux ви можете скопіювати назви стовпчиків трохи швидше, якщо двічі клацнете на назві у схемі таблиці, наведеній вище, двічі клаценет на наступній порожній комірці у стовпчику «Заголовок поля» на панелі дизайнера таблиць, а потім клацнете середньою кнопкою (коліщатком), щоб вставити раніше позначений текстовий фрагмент.


Note-box-icon.png
 
Зауваження
У Kexi таблицю можна створити за допомогою текстового редактора та команди SQL, але цей спосіб може бути зручнішим лише для досвідчених користувачів. Якщо ви цікавитеся цим питанням, будь ласка, повідомте про це на сторінці обговорення.


6. Збережіть компонування таблиці із заголовком Archive. Назву фізичної таблиці буде визначено у Kexi як archive, що відповідає назві тбалиці у файлі oaklandweather.sdb.

Зауважте, що після збереження компонування ви знову можете відкрити його для редагування. Єдиною проблемою може бути те, що після збереження зміненого компонування таблиці ви втратите усі дані у ній, якщо такі були. Тому варто переконатися, що компонування таблиці є ідеальним, перш ніж вставляти будь-які дані до таблиці.

Переконайтеся, що вставлено усі 52 стовпчики у компонуванні таблиці archive, і що усі ці дані правильно впорядковано і пов'язано із належним типом. Будь-які помилки можуть призвести до того, що таблиця archive буде непрацездатною у Kexi.

Щойно усі описані дії буде виконано, ви можете закрити вікно програми Kexi.

Файл Kexi без даних, для порівняння, можна отримати тут.

7. Поки у файлі oaklandweather.kexi немає даних. Але ми готові виконати останню команду для імпортування даних. У емуляторі термінала Konsole перейдіть до каталогу, де зберігаються файли oaklandweather.sdb та oaklandweather.kexi або вкажіть належні шляхи до цих файлів. Далі, введіть (або вставте) таку команду:

sqlite3 oaklandweather.sdb .dump | egrep -e "^(BEGIN|INSERT|ANALYZE|COMMIT)" | sqlite3 oaklandweather.kexi

Це працює ось так:

  • Створює звіт з файла oaklandweather.kexi у так званому форматі дампу SQL (текстовому представленні) за допомогою консольної програми sqlite3.
  • Вилучає з цього дампу будь-які рядки, які починаються з BEGIN, INSERT, ANALYZE або COMMIT. Цю дію слід виконати, оскільки нам слід отримтаи лише дані у таблиці, а не створити нову таблицю.
  • Спрямовує виведені дані до консольної програми sqlite3 ще раз. Програма отримує усі команди з виведених даних і застосовує їх до файла бази даних oaklandweather.kexi. Останньою застосованою командою є COMMIT.


8. Готово! Ви можете відкрити файл проекту бази даних oaklandweather.kexi у Kexi, відкрити таблицю 'archive' і бачити усі дані.


Файл-результат роботи Kexi можна отримати тут (стиснено до 650 кБ за допомогою xz).


This page was last modified on 19 May 2019, at 13:01. Content is available under Creative Commons License SA 4.0 unless otherwise noted.