вставить в таблицу (выбрать из другой таблицы) и некоторые параметры в MySQL - PullRequest
0 голосов
/ 28 октября 2018

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

CREATE  PROCEDURE `insertuser`(
    IN `param1` VARCHAR(50)

)
BEGIN

insert into users(firstname,lastname,email) 
select name,nickname,@param1 from members
where id=3;
END

Я заполняю param1, но запрос вставляет ноль в электронную почту, что мне нужно сделать?

1 Ответ

0 голосов
/ 28 октября 2018
Символ

@ используется для определения переменных сеанса (доступен для сеанса везде).Вам не нужно использовать @ здесь, так как вы используете значение входного параметра из хранимой процедуры.

Попробуйте вместо этого:

DELIMITER $$
CREATE  PROCEDURE `insertuser`(IN `param1` VARCHAR(50))
  BEGIN

    INSERT INTO users(firstname,lastname,email) 
    SELECT name,nickname,param1 -- remove @ from @param1 here
    FROM members
    WHERE id=3;
END$$
DELIMITER ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...