В рамках упражнения я пытаюсь написать функцию MySQL, которая принимает имя таблицы в качестве аргумента и возвращает количество записей из этой таблицы. Моя функция выглядит как -
DELIMITER //
create function recordCount(tname text)
returns int deterministic
begin
DECLARE rc int;
select count(*)
into rc
from tname;
return rc;
end;
//DELIMITER
Однако, когда я вызываю эту функцию как -
select recordCount('avengers');
, я получаю следующую ошибку:
Error Code: 1146. Table 'db.tname' doesn't exist 0.000 sec
Я не Я понимаю, почему функция не ищет таблицу «мстители». Я не могу понять, что делаю не так, пожалуйста, помогите.