При использовании параметров или переменных хранимой процедуры в операторе вы должны ставить перед параметром или именем переменной двоеточие :
.
В операторе удаления
delete from album where album.id = id_album
Firebird Парсер будет считать id_album
именем столбца, и в таблице album
такого столбца не существует. Вот почему вы получаете сообщение об ошибке.
Чтобы указать, что это переменная или параметр хранимой процедуры, добавьте префикс :
:
delete from album where album.id = :id_album