niente da fare...

ho provato in questi due modi ma mi restituiscono sempre
no data - zero rows fetched, selected or processed

Codice PHP:
CREATE PROCEDURE test.HASH(IN len INTIN counter INTOUT param CHAR(24))
READS SQL DATA
COMMENT 
''
BEGIN
  
DECLARE i INT DEFAULT 0;
  DECLARE 
h VARCHAR(24);

  DECLARE 
sql1 CURSOR FOR 
    
SELECT SUBSTRING(MD5(RAND()), -24) AS h;
  
  
CREATE TEMPORARY TABLE IF NOT EXISTS test.`hashes` (
    `
idint(10NOT NULL auto_increment,
    `
hashvarchar(24NOT NULL,
    
PRIMARY KEY  (`id`),
    
UNIQUE KEY `hash` (`hash`)
  );
  
  
OPEN sql1;
  
  
hash_loopLOOP
    FETCH sql1 INTO h
;
    
INSERT IGNORE INTO test.hashes hash VALUES);
    
SET i i+1;
    IF 
i=counter THEN
      LEAVE hash_loop
;
    
END IF;
  
END LOOP hash_loop;
  
  
CLOSE sql1;
  
  
SET param = (SELECT hash FROM test.hashes);
  
DROP TABLE test.hashes;
  
END
Codice PHP:
CREATE PROCEDURE test.HASH(IN len INTIN counter INTOUT param CHAR(24))
READS SQL DATA
COMMENT 
''
BEGIN
  
DECLARE i INT DEFAULT 0;
  DECLARE 
h VARCHAR(24);

  DECLARE 
sql1 CURSOR FOR 
    
SELECT SUBSTRING(MD5(RAND()), -24) AS h;
  
  
CREATE TEMPORARY TABLE IF NOT EXISTS test.`hashes` (
    `
idint(10NOT NULL auto_increment,
    `
hashvarchar(24NOT NULL,
    
PRIMARY KEY  (`id`),
    
UNIQUE KEY `hash` (`hash`)
  );
  
  
OPEN sql1;
  
    WHILE( 
counter ) DO
    
FETCH sql1 INTO h;
    
INSERT IGNORE INTO test.hashes hash VALUES);
        
SET i i+1;
    
END WHILE;
  
  
CLOSE sql1;
  
  
SET param = (SELECT hash FROM test.hashes);
  
DROP TABLE test.hashes;
  
END
chiamata:
Codice PHP:
CALL HASH(24,3,@a);
select @a