CÂU HỎI THƯỜNG GẶP! Khi tôi đánh vần mọi thứ chính xác, vấn đề sẽ biến mất!Phạm vi của các bảng tạm thời được tạo trong thủ tục lưu sẵn MySQL
Tôi có quy trình lưu trữ MySQL tạo bảng tạm thời. Khi tôi gọi thủ tục từ dấu nhắc mysql, nó xuất hiện để chạy thành công, nhưng nếu tôi sau đó SELECT COUNT (*) từ bảng tạm thời, tôi nhận được một lỗi nói rằng bảng không tồn tại.
Có một bảng tạm thời được tạo bên trong một thủ tục được lưu trữ không còn tồn tại khi thủ tục được lưu trữ kết thúc?
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
No. Nó vẫn còn ở đó. Bạn có thể đưa mã vào đây không? – ethrbunny
delimiter // quy trình thả nếu tồn tại sp_temp_reciepts // tạo thủ tục sp_temp_receipts() bắt đầu – user1956095
Vui lòng chỉnh sửa bài đăng gốc của bạn để bao gồm mã. – ethrbunny