ВОПРОС ОТКЛЮЧАЕТСЯ! Когда я все правильно пишу, проблема уходит!
У меня есть хранимая процедура MySQL, которая создает временную таблицу. Когда я вызываю процедуру из приглашения mysql, она работает успешно, но если я затем выберем COUNT (*) из временной таблицы, я получаю сообщение об ошибке, что таблица не существует.
Временная таблица, созданная внутри хранимой процедуры, перестает существовать при завершении хранимой процедуры?
mysql> delimiter //
mysql> drop procedure if exists sp_temp_reciepts//
mysql> create procedure sp_temp_receipts ()
begin
drop temporary table if exists receipts;
create temporary table receipts
( ... snip ...
);
insert into receipts
select ... snip ...
end//
mysql> delimiter ;
mysql> call sp_temp_reciepts();
Query OK, 46903 rows affected, 1 warning (2.15 sec)
mysql> select count(*) from receipts;
ERROR 1146 (42S02): Table 'receipts' doesn't exist