Гость
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Импорт данных из DBF / 5 сообщений из 5, страница 1 из 1
16.11.2018, 16:19
    #39734242
Шавлюк Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из DBF
Импорт данных из DBF

1. Создание таблицы на основе DBF
а) для числовых полей (N) использует "DOUBLE PRECISION", но надо использовать NUMERIC(N,M)
б) для логических полей (L) использует "VARCHAR(5)" - но мне кажется или (VAR)CHAR(1) или INTEGER/SMALLINT. BOOLEAN тоже можно, но по "галке".

2. У меня есть таблица в которой имя поле не в ANSI ("N") к этому я не могу обратиться ни по имени, ни по индексу (mapping)

Код: sql
1.
2.
  sMappings = '"TN"=0;' + 
              '"SHIFR_N"="SHIFR_N";' + ...



3. Не самое важное, но долго импорт идет по сравнению с INSERT SQL на основе данных из этого dbf (генерировал своей тулзой)
...
Рейтинг: 0 / 0
17.11.2018, 05:00
    #39734443
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из DBF
1. Насчет NUMERIC - посмотрю. Для boolean там галка есть на закладке "Поля/соответствие".

2. "N" - первый символ там $1A (#26). Что мне с ним делать прикажешь?

3. "Долго" - это сколько? В разы дольше? На 20%??
...
Рейтинг: 0 / 0
17.11.2018, 19:39
    #39734622
Шавлюк Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из DBF
IBExpert,

2. Я хотел чтобы маппинг по индексу работал с этим полем. Сейчас при sMappings = '"TN"=0;' поле просто игнорируется.
Точнее не так, содержимое этого поля не показывается в окне "Импорт данных" (первые 100 записей).

3. Скорость импорта примерно в 4-5 раз медленнее.
Для примера
Формирую своей тулзой Insert sql на основе широкого DBF (примерно 1 с)
Выполняю Insert sql - импорт прошел за 8.7с,

Импортирую тот же dbf через ibec_ImportData - 41с, т.е. в 4-5 раза медленнее

Могу дать файл для теста, но не хотелось бы его здесь в открытый доступ выкладывать
...
Рейтинг: 0 / 0
18.11.2018, 03:41
    #39734696
IBExpert
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из DBF
Шавлюк Евгений2. Я хотел чтобы маппинг по индексу работал с этим полем. Сейчас при sMappings = '"TN"=0;' поле просто игнорируется.
Точнее не так, содержимое этого поля не показывается в окне "Импорт данных" (первые 100 записей).

В названии поля почему-то присутствует какой-то управляющий символ. Где-то в потрохах кода, который читает DBF, это сбивает его с толку. Я у себя вообще не вижу данных из этого файла в превью. Ну и не вижу смысла разгребать чужой код с целью научить его кривые имена полей обрабатывать.

Шавлюк ЕвгенийМогу дать файл для теста, но не хотелось бы его здесь в открытый доступ выкладывать

На почту присылай.
...
Рейтинг: 0 / 0
19.11.2018, 11:21
    #39735029
Шавлюк Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из DBF
IBExpertНа почту присылай.Выслал
...
Рейтинг: 0 / 0
Форумы / IBExpert [игнор отключен] [закрыт для гостей] / Импорт данных из DBF / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]