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



         

9.2.2.3 Обработка аргументов - часть 2


Функции могут ссылаться на аргумент i следующим образом:

  • Аргумент типа STRING_RESULT передается в виде указателя на строку плюс длина, чтобы обеспечить обработку двоичных данных или данных произвольной длины. Содержимое строки доступно посредством args->args[i], а длина строки представляет собой args->lengths[i]. Не следует исходить из предположения, что символ \0 отмечает конец строки.

  • Для аргумента типа INT_RESULT необходимо привести args->args[i] к значению типа long long:

    long long int_val; int_val = *((long long*) args->args[i]);

  • Для аргумента типа REAL_RESULT необходимо привести args->args[i] к значению типа double:

    double real_val; real_val = *((double*) args->args[i]);

    unsigned long *lengths

    Для функции инициализации массив lengths указывает максимальную длину строки для каждого аргумента. Изменять этот массив нельзя. При каждом вызове главной функции lengths содержит фактические длины всех строковых аргументов, переданных для обрабатываемой в текущий момент строки. Для типов аргументов INT_RESULT или REAL_RESULT lengths также содержит максимальную длину аргумента (как для функции инициализации).




    Содержание  Назад  Вперед