- Головна
- Програми
- Бази даних
Database Tour
Exportizer
Reportizer- Файлові утиліти
Icons from File
Rename Us- Ігри
Логічні Перехрестя
Вільне Рендзю
Ханойські Вежі- Екранні заставки
Flying Cube
- Завантаження
- Контакт
- Про нас
- Ресурси
Бази даних
Exportizer Часті запитання
Тут ви можете знайти відповіді на популярні запитання про Exportizer. Натисніть кнопку '+', щоб розгорнути потрібну відповідь.
Загальні питання
Чим відрізняється експортування даних в Exportizer Enterprise від Database Tour Pro?
І Exportizer Enterprise, і Database Tour Pro використовують однаковий движок експорту і мають майже однакові можливості експорту даних. Але Database Tour Pro має багато інших можливостей, тоді як Exportizer Enterprise призначений в основному для цілей експортування даних. Ось невелика таблиця порівняння основних можливостей:
| Можливість | ||
|---|---|---|
Експортування даних з графічного інтерфейсу |
||
Експортування даних з командного рядка |
||
Інші (не експортні) можливості командного рядка |
||
Звіти з баз даних |
||
Виконання власних запитів SQL |
||
Виконання багатокомандних запитів SQL |
||
Підтримка транзакцій |
лише на цільовому боці | |
Інші можливості типу пошуку та заміни тексту, інтерфейс створення таблиць, редагування полів BLOB і т.п. |
Інші характеристики
| Швидкість експорту даних | однакова |
| Швидкість доступу до даних | Exportizer іноді (не завжди) дещо швидший |
| Використання оперативної пам'яті | Для Exportizer потрібно трохи менше оперативної пам'яті |
| Інтерфейс експорту даних | Exportizer має більш гнучкий інтерфейс |
| Підтримка SQL | Обидві програми однакові у виконанні команд SQL, але Database Tour має більше функцій для генерації спеціального коду SQL |
Яку версію вибрати: 32-bit чи 64-bit?
Вибір бітності - це питання сумісності Exportizer та: 1) вашої операційної системи (ОС); 2) інших компонентів баз даних, з якими працює програма.
Сумісність з ОС
Можна використовувати Exportizer 32-bit на Windows 32-bit та Windows 64-bit, але Exportizer 64-bit повинен використовуватися лише на Windows 64-bit.
У будь-якому разі, на Windows 64-bit, якщо ви не хочете заглиблюватися в деталі, можете встановити Exportizer 32-bit та 64-bit одночасно і перемикатися між ними при потребі. Майте на увазі, що на Windows 64-bit встановлювати Exportizer 32-bit потрібно в Program Files (x86), Exportizer 64-bit - в Program Files. Програма встановлення сама знає, куди встановлювати, тому краще не змінювати шлях, який вона пропонує по замовчанню.
Сумісність з іншими компонентами баз даних
Розглянемо кілька прикладів...
Якщо вам потрібно працювати з файлами dBase (.dbf), Exportizer може використовувати різні способи відкриття таких баз даних
. Незалежно від того, який спосіб ви виберете, всі задіяні компоненти баз даних (драйвери, провайдери OLE DB та власне Exportizer) мають бути однакової бітності. Наприклад, при роботі з цими файлами через драйвер ODBC бітність Exportizer повинна співпадати з бітністю драйвера ODBC.
Аналогічно, якщо необхідно, щоб Exportizer працював з базами даних .accdb (Microsoft Access 2007 та вище), бітність Exportizer повинна співпадати з бітністю провайдера ACE OLE DB або драйвера ODBC для Access, в залежності від того, який компонент (OLE DB чи ODBC) ви виберете.
Для роботи з Oracle, SQL Server, PostgreSQL, Firebird, MySQL та іншими серверними базами даних бітність Exportizer повинна бути такою ж, як бітність відповідного клієнта; якщо ви плануєте працювати з такими базами даних через ODBC, бітність Exportizer повинна співпадати з бітністю відповідного драйвера ODBC.
А якщо вам потрібно працювати зі старим BDE, інсталюйте Exportizer 32-bit.
Технічні питання
Чи може Exportizer експортувати дані у 'тихому' режимі (без показу вікон графічного інтерфейсу)?
Exportizer Enterprise може експортувати дані з командного рядка з опціональним використанням ключа /silent. Більше можна дізнатися в документації Exportizer
.
Експортування до локальних файлів дійсно швидке, але як прискорити експорт до баз даних?
По-перше, у випадку серверних баз даних перед експортом пересвідчіться, що всі записи джерела скопійовано на клієнтський бік (тобто fetched). Для цього слід просто перейти на останній запис набору даних. Звичайно, це якщо ви хочете експортувати всі записи джерела.
По-друге, завжди, коли можливо, використовуйте інтерфейс FD та опцію Пакетний режим для цільових баз даних. Це може пришвидшити експорт до сотень разів.
У контексті пакетного режиму опція Commit-інтервал задає розмір одного пакету даних. Чим більше її значення, тим більша швидкість експорту. Але занадто великі значення можуть викликати переповнення пам'яті під час експорту. Поекспериментуйте з цим значенням, щоб знайти оптимальне для себе.
Мені потрібно експортувати результати обчислень формул. Чи можливо це?
Так. Є 2 способи робити це.
1. Якщо ваша база даних дозволяє формули в SQL, використання запиту SQL буде найбільш ефективним. Ось приклад запиту, який Ви можете написати в редакторі SQL:
SELECT
column1,
column2,
column3,
column1 + column2 as MyFormula1,
column2 || column3 as MyFormula2
FROM MyTable
2. Інший спосіб - написати ваші формули на кроці Відповідність полів діалогу Експорту. У цих формулах ви можете використовувати поля таблиці-джерела, спеціальні функції, і навіть локальні файли.
Отже, клікніть кнопку Додати у Відповідностях полів. В таблиці відповідностей полів з'явиться новий запис для нової відповідності. Клікніть кнопку ... в першій колонці і вкажіть ваш вираз (формулу). Приклади:
a. Отримати суму двох числових полів
vle_expr(dataset_field_val(1, 'column1') + dataset_field_val(1, 'column2'))
b. Замінити специфічні символи в даних деяких полів
vle_expr(string_replace(dataset_field_val(1, 'column3'), char(0), ' '))
c. Отримати розмір файлу, посилання на який зберігається в певному полі
vle_expr(file_size(dataset_field_val(1, 'column3')))
В правій колонці вкажіть назву цільового поля аналогічно тому, яки ви це робите для експорту фізичних полів.
Як експортувати дуже великі таблиці до іншої бази даних?
Експортування великої таблиці або запиту до іншої бази може стати викликом. Іноді ви можете отримати помилку Out of memory під час експортування або навіть відкриття такої таблиці.
В Exportizer Enterprise можливі кілька способів вирішення проблеми. Див. більше в документації Exportizer
.
Як експортувати поля типу BYTES?
При експорті до іншого поля типу BYTES все досить просто. Потрібно просто співставити відповідні поля джерела та цілі на етапі Відповідність полів діалогу Експорту.
При експорті до деяких файлових форматів, наприклад, Excel або HTML, результат буде рядком у шістнадцятковій формі, що починається з 0x.
При експорті до полів бази даних типу CHAR або CLOB (тобто сумісних з текстом) потрібно дещо більше роботи. На етапі Відповідність полів діалогу Експорту співставте поля джерела та цілі, потім вкажіть наступний вираз замість назви поля джерела:
vle_expr(dataset_field_hex_val(1, 'НАЗВА_ВАШОГО_ПОЛЯ'))
В результаті дані буде експортовано до цілі у вигляді рядка у шістнадцятковій формі, що починається з 0x.
Експортування з рядків у шістнадцятковій формі до полів типу BYTES також можливе. Лише впевніться, що ваш вхідний рядок починається з 0x: це вкаже програмі, що вхідні дані є послідовністю байтів у шістнадцятковій формі.
Як експортувати картинки з поля BLOB до окремих графічних файлів?
Ось інструкція:
- Відкрийте таблицю-джерело з вашим полем типу BLOB і клікніть Експорт.
- Виберіть цільовий формат експорту. Якщо потрібно експортувати лише картинки із поля BLOB, цільовий формат значення не має. Давайте виберемо Текст.
- Вкажіть назву для цільового текстового файлу. Цей файл не буде містити корисної інформації, тому після експорту можна буде його знищити.
- Перейдіть до кроку Відповідність полів. Вилучіть всі відповідності, окрім відповідності для поля BLOB. Очистіть назву цільового поля в таблиці відповідностей.
- Напишіть формулу для цільових графічних файлів. Це найбільш цікавий і найбільш важливий крок. Перейдіть до колонки Цільовий файл і клікніть кнопку '...' праворуч для запуску Конструктора виразів. Як можна бачити, Exportizer вже створив формулу за умовчанням:
vle_expr(extract_file_path(target_file_name(1)) + 'Name_' + to_string(dataset_row_count(1, 0)) + '.???')
Тут extract_file_path(target_file_name(1)) витягує шлях до директорії з цільовим текстовим файлом з п.3; якщо потрібно, замініть його константним шляхом з вашого комп'ютера (не забудьте додати зворотний слеш в кінці!).
Частина to_string(dataset_row_count(1, 0)) формули додає поточний номер запису до кінця назви файлу, щоб гарантувати унікальність імені в межах набору даних.
Замініть ??? потрібним розширенням файлу.
Якщо вихідний набір даних вже містить унікальні імена файлів в якомусь полі, просто вилучіть формулу за умовчанням і напишіть свою:
dataset_field_val(1, 'file_name')
(замініть file_name іменем поля, яке містить імена файлів).
Клікніть OK для застосування формули. - Клікніть кнопку Зберегти для збереження відповідностей полів до файлу для майбутнього використання.
- Клікніть кнопку Експорт і перевірте результати.
Примітка: Існуючі файли будуть перезаписані без запиту.
Див. також: Приклад експорту PDF з полів BLOB до окремих файлів
.
Як експортувати текст з деяких колонок до окремих файлів?
Можна експортувати вміст будь-якого поля до окремого файлу. Процес дуже подібний до експортування BLOB-ів до графічних файлів, описаного вище:
- Відкрийте вихідну таблицю або запит і клікніть Експорт.
- Виберіть цільовий формат експорту. Давайте виберемо Текст.
- Вкажіть назву для цільового текстового файлу.
- Перейдіть до кроку Відповідність полів.
- Напишіть формулу для цільових файлів для кожного поля, вміст якого вам потрібно зберігати до окремих файлів. В колонці Цільовий файл і клікніть кнопку '...' праворуч для запуску Конструктора виразів. Ви побачите формулу за умовчанням:
vle_expr(extract_file_path(target_file_name(1)) + 'Name_' + to_string(dataset_row_count(1, 0)) + '.???')
Тут extract_file_path(target_file_name(1)) витягує шлях до директорії з цільовим текстовим файлом з п.3; якщо потрібно, замініть його константним шляхом з вашого комп'ютера (не забудьте додати зворотний слеш в кінці!).
Частина to_string(dataset_row_count(1, 0)) формули додає поточний номер запису до кінця назви файлу, щоб гарантувати унікальність імені в межах набору даних.
Замініть ??? потрібним розширенням файлу.
Якщо вихідний набір даних вже містить унікальні імена файлів в якомусь полі, просто вилучіть формулу за умовчанням і напишіть свою:
dataset_field_val(1, 'file_name')
(замініть file_name іменем поля, яке містить імена файлів).
Клікніть OK для застосування формули. - Клікніть кнопку Зберегти для збереження відповідностей полів до файлу для майбутнього використання.
- Клікніть кнопку Експорт і перевірте результати.
Примітка: Існуючі файли будуть перезаписані без запиту.
Див. також: Приклад експорту PDF з полів BLOB до окремих файлів
.
Я будую відповідності джерело-ціль для експорту багатьох таблиць до іншої бази даних. Назви вихідних таблиць і колонок містять пробіли, які автоматичний конструктор переносить і в цільові назви. Чи є спосіб швидко замінити пробіли в цільових назвах?
Так, це можна зробити у кілька кліків:
- Відкрийте вихідну базу даних, виберіть потрібні таблиці і клікніть Експорт.
- Виберіть формат експорту База даних, і зі списку баз даних виберіть потрібну.
- Перейдіть до кроку Відповідність таблиць.
- Клікніть кнопку Утиліти і виберіть Операції з цільовими атрибутами....
- У списку цільових атрибутів виберіть Цільова таблиця та Відповідність полів.
- Клікніть галочку Замінити текст і вкажіть параметри заміни.
- Клікніть Виконати. Перевірте результати і клікніть кнопку Зберегти для збереження відповідностей таблиць до файлу для майбутнього використання.
Я використовую збережену процедуру для підготовки даних до експорту. Чи можу я відредагувати її в Exportizer?
Exportizer може працювати зі збереженими процедурами в базах даних PostgreSQL, Oracle, SQL Server, MySQL, Interbase та Firebird.
Щоб завантажити визначення процедури в SQL-редактор Exportizer:
- Відкрийте нове вікно SQL. Завантажте текст процедури з файлу. або
- Відкрийте нове вікно SQL, введіть procedure або function, а потім — назву вашої збереженої процедури або функції відповідно. Після цього клацніть назву процедури, утримуючи клавішу Ctrl, щоб завантажити її визначення безпосередньо з бази даних. Примітка: те саме можна зробити для пакетів Oracle.
Після зміни процедури ви можете скомпілювати її в Exportizer.
Чи можна додати підсумкові значення під час експорту таблиці в електронну таблицю Excel або ODS?
Так. Але майте на увазі: це буде не формула Excel чи ODS, а формула Exportizer, яка обчислюється під час експорту, а в цільовий документ записується вже як число або текст.
Будь ласка, ознайомтеся з повним прикладом для HTML у документації до спорідненого продукту (Database Tour). У програмі Exportizer процес експорту в Excel, ODS, HTML або PDF відбувається дуже подібно.
