Справочное руководство по MySQL версии 4.1.1-alpha

Как конвертировать инструментальные средства mSQL в MySQL


Согласно нашему опыту, переделать такие инструментальные программы, как msql-tcl и msqljava, созданные на основе C API mSQL для работы с C API MySQL, несложно.

Сделать это можно так:

  1. Пропустите исходный файл через сценарий оболочки msql2mysql. Для этого необходима программа replace, распространяющаяся вместе с MySQL Server.

  2. Откомпилируйте.

  3. Исправьте все найденные компилятором ошибки.

    Различия между реализациями C API в mSQL и MySQL заключаются в следующем:

    • В качестве типа в MySQL используется структура MYSQL (в mSQL в этом качестве применяется int).

    • Оператор mysql_connect() принимает в качестве параметра указатель на структуру MYSQL. Такую структуру можно легко объявить как глобальную или создать ее с помощью malloc(). Кроме того, mysql_connect() принимает еще два параметра, в которых указываются имя пользователя и его пароль. Для использования данной структуры по умолчанию этим параметрам нужно присвоить значения NULL, NULL.

    • mysql_error() принимает в качестве параметра структуру MYSQL. При переносе старого кода достаточно добавить параметр в вызов msql_error().

    • Для всех ошибок MySQL возвращает номер ошибки и текстовое сообщение. mSQL же возвращает только текстовое сообщение об ошибке.

    • Существует некоторая несовместимость, обусловленная тем, что в MySQL Server можно создавать несколько соединений с сервером из одного и того же процесса.



      Содержание раздела