Хранимая процедура возвращает неверные данные - PullRequest
0 голосов
/ 02 ноября 2018

Я новичок в MySQL Workbench, и я создал таблицу

    # thing, legs, arms, mySerial
    'human', '2', '2', '1'
    'insect', '6', '0', '2'
    'squid', '0', '10', '3'
    'fish', '0', '0', '4'
    'centipede', '100', '0', '5'
    'table', '4', '0', '6'
    'armchair', '4', '2', '7'
    'phonograph', '0', '1', '8'
    'tripod', '3', '0', '9'
    'Peg Leg Pete', '1', '2', '10'
    'space alien', NULL, NULL, '11'
    'human', '2', '2', '12'
    'insect', '6', '0', '13'
    'squid', '0', '10', '14'
    'fish', '0', '0', '15'
    'centipede', '100', '0', '16'
    'table', '4', '0', '17'
    'armchair', '4', '2', '18'
    'phonograph', '0', '1', '19'
    'tripod', '3', '0', '20'
    'Peg Leg Pete', '1', '2', '21'
    'space alien', NULL, NULL, '22'

Я хочу использовать хранимую процедуру, чтобы вернуть мне количество ног, когда я ввожу название вещи.

Моя хранимая процедура ниже:

    Delimiter $$

    USE cookbook$$
    drop procedure IF exists get_obj_name$$


    CREATE PROCEDURE get_obj_name (IN object VARCHAR(24),out legs int)
    BEGIN

    Select legs from limbs where thing = object;

    END$$

    Delimiter ;


    set @thing = 'armchair';
    call cookbook.get_obj_name(@thing, @legs);

Вместо того, чтобы получить количество ножек для кресла, я получил:

    legs
    Null
    Null
    Null

Кто-нибудь знает, как правильно использовать хранимую процедуру?

...