импортировать дамп базы данных в MySQL, используя Visual FoxPro - PullRequest
0 голосов
/ 19 июля 2011

Я использовал листья stru2mysql.prg и vfp2mysql_upload.prg для создания файла дампа .sql из файлов DBF. Я подключаюсь к базе данных mysql из vfp, используя ODBC. Я ЗНАЮ, как выгрузить файл дампа sql, но мне нужно автоматизировать весь процесс, т.е. после создания файла дампа, моя программа Visual FoxPro может загрузить файл дампа без участия третьей стороны (автоматически). Я подумал об использовании команды source, но это нужно запустить в приглашении mysql. Предполагается, что мои конечные пользователи не знают, как импортировать (что большинство из них не делают). Пожалуйста, посоветуйте, как я могу автоматизировать импорт файла sql в mysql database.thank вы

Ответы [ 2 ]

0 голосов
/ 10 апреля 2012

Вот шаги, которые я использую для получения данных из базы данных Visual FoxPro и загрузки в базу данных MySql.Все они помещаются в пользовательский метод в форме, который запускается кнопкой команды.Например, метод будет «uploadnewdata», и я передаю параметры для любых таблиц данных, которые мне нужны

1) Подключение к серверу - я использую MySql ODBC 2) Проверка пользователя (для извлечения правильного используется SQLEXECсоответствующая запись для пользовательских таблиц IF M.WorkingDatabase <> - 1 nRetVal = SQLEXEC (m.WorkingDatabase, "SELECT * FROM users", "csrUsersOnServer")

SELECT csrUsersOnServer
SELECT userid,FROM csrUsersOnServer;
WHERE ALLTRIM(UPPER(userid))=ALLTRIM(UPPER(lcRanchUser));
 AND ALLTRIM(UPPER(lcPassWord))=ALLTRIM(UPPER(lchPassWord));
INTO CURSOR ValidUsers
IF _TALLY>=1
     ELSE
=MESSAGEBOX("Your Premise ID Does Not Match Any Records On The Server","System Message")
RETURN 0
ENDIF
ELSE
=MESSAGEBOX("Unable To Connect To Your Database", "System Message")
RETURN 0
ENDIF

3) После успешного создания я создаюмой базовый курсор (это тот, с которого я отправляю) 4) Затем я перебираю этот курсор, создавая переменную для значений в полях 5), затем используя SQLEXEC и INSERT INTO, я обновляю каждую запись 6), как только программазавершает обработку курсора, генерирует окно сообщения с сообщением «закончено», и элемент управления возвращается в форму.

Все, что нужно сделать пользователю, - это выбрать стартовую таблицу и ввести свою регистрационную информацию

0 голосов
/ 20 июля 2011

Я думаю, что вы ищете различные функции SQL * в Foxpro.Обратитесь к справке VFP или MSDN для функций SQLCONNECT (или SQLSTRINGCONNECT), SQLEXEC и SQLDISCONNECT, чтобы начать работу.Microsoft предоставила хорошие примеры каждого из них в документации.

Вы также можете использовать FILETOSTR, чтобы получить выходные данные программ Лиафе в строку для функции SQLEXEC.

...