sql >> Databasteknik >  >> RDS >> Mysql

MySQL för varje alternativ för procedur

Här är mysql-referens för markörer . Så jag antar att det är ungefär så här:

  DECLARE done INT DEFAULT 0;
  DECLARE products_id INT;
  DECLARE result varchar(4000);
  DECLARE cur1 CURSOR FOR SELECT products_id FROM sets_products WHERE set_id = 1;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

  OPEN cur1;

  REPEAT
    FETCH cur1 INTO products_id;
    IF NOT done THEN
      CALL generate_parameter_list(@product_id, @result);
      SET param = param + "," + result; -- not sure on this syntax
    END IF;
  UNTIL done END REPEAT;

  CLOSE cur1;

  -- now trim off the trailing , if desired


  1. MYSQL - Omöjligt att skapa en extern nyckel

  2. Hur importerar jag en SQL-fil till databasen och ignorerar X-rader i filen?

  3. Använd inte sp_depends i SQL Server (den är utfasad)

  4. Hur du vårrensar din databas