0
我想循環遍歷一個包含另一個數據庫的數據庫名稱的表中的所有行。這是我編寫的內容,但不起作用,因爲MySQL將'數據庫'位作爲實際數據庫名稱而不是內容。在SELECT語句中使用變量引用另一個數據庫
我該如何更改以下內容才能獲取變量的內容?
DROP PROCEDURE IF EXISTS CYCLE;
DELIMITER ;;
CREATE PROCEDURE CYCLE()
BEGIN
DECLARE data_name CHAR(255);
DECLARE done INT DEFAULT FALSE;
DECLARE cursor_i CURSOR FOR SELECT database FROM company;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN cursor_i;
read_loop: LOOP
FETCH cursor_i INTO database;
IF done THEN
LEAVE read_loop;
END IF;
SELECT * FROM database.table LIMIT 1;
END LOOP;
CLOSE cursor_i;
END;
;;
DELIMITER ;
更新:要清楚我知道'數據庫'是一個保留字。我用這裏代替了我用過的實際變量名稱。
請參見[9.2.1標識符限定符](https://dev.mysql.com/doc/refman/5.7/en/identifier-qualifiers.html),[9.3關鍵字和保留字](https:/ /dev.mysql.com/doc/refman/5.7/en/keywords.html)和[13.5 Prepared SQL Statement Syntax](https://dev.mysql.com/doc/refman/5.7/en/sql-syntax-製備-statements.html)。 – wchiquito
不知道這有幫助嗎?標識符限定符沒有提及使用變量。關於準備好的陳述同上。我知道'數據庫'是一個保留字,但是這只是一個例子。在發佈之前,我已經完成了文檔。 – williamsdb