ZSQLProcessor не загружает sql файл

Модератор: Модераторы

ZSQLProcessor не загружает sql файл

Сообщение java73 » 11.06.2015 13:13:13

Добрый день
Использую в своей БД компонент ZSQLProcessor для создания структуры БД и импорта данных из sql файлов.
Файлы sql создаются через экспорт данных в Mysql workbench
написал следующую процедуру:
Код: Выделить всё
procedure TSettingsForm.DumpRestore;
var
  DumpDir: string;
  SQLFiles: TStrings;
  I: integer;
begin
  DumpDir:=AppendPathDelim(ExtractFileDir(ParamStrUTF8(0)))+'Dump';
  DumpDir:=AppendPathDelim(DumpDir);
  if DirPathExists(DumpDir) then begin
    SQLFiles:=TStrings.Create;
    SQLFiles:=FindAllFiles(DumpDir,'*.sql',FALSE);
    for I:=0 to SQLFiles.Count do begin
      DBLabel.Caption:='Выполняется импорт из файла '+SQLFiles.Strings[I];
      DM1.SQLproc.Clear;
      DM1.SQLproc.LoadFromFile(SQLFiles.Strings[I]);
      DM1.SQLproc.Execute;
    end;
    DBLabel.Caption:='Импорт успешно завершён';
    SQLFiles.Free;
  end else ShowMessage('Каталог с дампом не найден');
end;


Список файлов загружается в TStrings нормально, однако метод SQLProcessor.LoadFromFile не срабатывает. Ошибка Unable to open file ...
Причем в предыдущем методе
Код: Выделить всё
DBLabel.Caption:='Создание структуры базы данных...';
       DM1.SQLproc.LoadFromFile('dbcreate.sql');
       DM1.SQLproc.Execute;

все отрабатывает нормально.

не пойму, в чем проблема.
java73
постоялец
 
Сообщения: 257
Зарегистрирован: 21.11.2013 09:08:10

Re: ZSQLProcessor не загружает sql файл

Сообщение v-t-l » 11.06.2015 15:24:39

Код: Выделить всё
DM1.SQLproc.LoadFromFile(UTF8ToSys(SQLFiles.Strings[I]));

?
v-t-l
энтузиаст
 
Сообщения: 727
Зарегистрирован: 13.05.2007 16:27:22
Откуда: Belarus

Re: ZSQLProcessor не загружает sql файл

Сообщение java73 » 11.06.2015 15:48:33

v-t-l писал(а): v-t-l » 11.06.2015 15:24:39


Спасибо. Для открытия файла помогло.
Теперь ему не нравится синтаксис команды USE 'databasename';
java73
постоялец
 
Сообщения: 257
Зарегистрирован: 21.11.2013 09:08:10

Re: ZSQLProcessor не загружает sql файл

Сообщение Ism » 11.06.2015 21:08:34

ZSQLProcessor вещь медленная и иногда глючит
Лучше через ZConnection.ExecuteDirect (для небольших скриптов )

Или
http://www.freepascal.ru/forum/viewtopi ... =5&t=10148
Ism
энтузиаст
 
Сообщения: 908
Зарегистрирован: 06.04.2007 17:36:08


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru