1
Как вы объявляете переменную и задаете значение, которое является возвратом от запроса на них позже.MySQL Назначить возвращаемое значение переменной
Пример хранимой процедуры:
DELIMITER $$
CREATE PROCEDURE `sampledb`.`SetVariableEx`()
BEGIN
-- declare variable
DECLARE xVarA INT;
DECLARE xVarB INT;
-- in this line, i would like to set a value on xVarA which is a COUNT
-- of record from table SINGLETABLE
-- i am getting error on this line.
SELECT xVarA := COUNT(*) FROM SingleTable;
-- the value of xVarA is added by 1 and set it to xVarB
SET xVarB = xVarA + 1;
-- insert the value of xVarB to the table SINGLETABLE
INSERT INTO SingleTable(SingleColumn) VALUES (xVarB);
-- lastly, display all records.
SELECT * FROM SingleTable;
END$$
DELIMITER ;
как бы я это сделать?
AutoIncrement не является моей точкой в Qestion, а скорее задает значение из запроса переменной. SET xVarA: = SELECT COUNT (*) FROM SingleTable; не работает, но, поставив запрос внутри Parenthesis, работает. SET xVarA: = (SELECT COUNT (*) FROM SingleTable); благодаря! –
@ 491243 Как-то пропустил это раньше, довольно запоздало обернулся, чтобы обновить свой ответ. Благодарю. –