1

Тема: Где найти рабочую mysql.dll для QUIK8

В своих скриптах для QUIK7 для подключения к базе данных MySQL использовал библиотеку lybmysql.lib и mysql.dll, которые устанавливались в каталог \QUIK7\luasql\ и подключались require"luasql.mysql". С QUIK7 все замечательно работало, но в связи с переходом на QUIK8 разрядность файла mysql.dll теперь должна быть x64. Может быть у кого-то есть готовая библиотека  lybmysql.lib и рабочий mysql.dll для QUIK8 или подскажите как их перекомпилировать.

2

Re: Где найти рабочую mysql.dll для QUIK8

Я верно понимаю, что это вот эта библиотека?
[url]https://github.com/keplerproject/luasql[/url]

3

Re: Где найти рабочую mysql.dll для QUIK8

Да, это она, но в этом zip-архиве, файла mysql.dll  нет и библиотеки lybmysql.lib тоже. Может нужно их скомпилировать?

4

Re: Где найти рабочую mysql.dll для QUIK8

Ну да, надо скомпилировать.

5 (2021-03-15 17:43:33 отредактировано ustas012)

Re: Где найти рабочую mysql.dll для QUIK8

Если не сложно, напишите как и чем компилировать.

6

Re: Где найти рабочую mysql.dll для QUIK8

Microsoft Visual Studio, например.

7

Re: Где найти рабочую mysql.dll для QUIK8

Простите за нескромный вопрос: Могли бы Вы скомпилировать файл mysql.dll и выложить например на yandex диск, а то я в Visual Studio не силен. Заранее благодарен.

8

Re: Где найти рабочую mysql.dll для QUIK8

Напишите мне на swerg@swerg.ru
Есть готовая сборка

9

Re: Где найти рабочую mysql.dll для QUIK8

Как установить Lua My SQL библиотеку.

В архиве с библиотекой содержатся 2 файла: mysql.dll  и libmysql.dll
1) В каталог с QUIK (где info.exe) копируем файл libmysql.dll
2) В каталоге с QUIK (где info.exe) создаем папку luasql
В эту папку копируем  файл  mysql.dll для той версии Lua, которую хотим использовать в терминале QUIK
3) Подключаем библиотеку в lua-скрипт:

mysql = require("luasql.mysql")

Готово! Библиотека готова к использованию.

Пример кода по работе с библиотекой из Lua:

local mysql = require "luasql.mysql"
 
-- Создание соединения с базой данных
local env = assert(mysql.mysql())
local conn = assert(env:connect("database_name", "username", "password", "hostname", port))
 
-- Выполнение SQL-запроса
local cursor = assert(conn:execute("SELECT * FROM table_name"))
 
-- Получение результатов запроса
local row = cursor:fetch({}, "a")
while row do
  print(row.column_name)
  row = cursor:fetch({}, "a")
end
 
-- Закрытие соединения
cursor:close()
conn:close()
env:close()