Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mieć dynamiczny SQL w procedurze przechowywanej MySQL?

Od wersji 5.0.13 w procedurach składowanych można używać dynamicznego SQL:

separator
delimiter // 
CREATE PROCEDURE dynamic(IN tbl CHAR(64), IN col CHAR(64))
BEGIN
    SET @s = CONCAT('SELECT ',col,' FROM ',tbl );
    PREPARE stmt FROM @s;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;
END
//
delimiter ;

Dynamiczny SQL nie działa w funkcjach ani wyzwalaczach. Zobacz dokumentację MySQL więcej zastosowań.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Aktualizacja MySQL PRZYPADEK KIEDY / WTEDY / INACZEJ

  2. Howto:Wyczyść silnik pamięci masowej mysql InnoDB?

  3. Kiedy zamykać kursory za pomocą MySQLdb

  4. Używanie unii i kolejności według klauzuli w mysql

  5. Jak utworzyć bazę danych MySQL za pomocą interfejsu API cPanel