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

Jak używać zmiennych Mysql z Hibernate?

Cóż, w końcu używam procedury składowanej (tak, czego początkowo nie chcę) do tworzenia dynamicznego zapytania (nie sądzę, żeby było to możliwe).

Oto mój kod:Procedura składowana:

DELIMITER |

DROP PROCEDURE IF EXISTS UpdateRank |

CREATE PROCEDURE UpdateRank(IN shortcut varchar(30))
BEGIN
    SET @rank=0;
    SET @query=CONCAT('UPDATE Rank SET ', shortcut, '[email protected]:[email protected]+1 ORDER BY ', shortcut);     

    PREPARE q1 FROM @query;
    EXECUTE q1;
    DEALLOCATE PREPARE q1;
END;

|
DELIMITER ;

Wskazówka dotyczy użycia funkcji CONCAT do dynamicznego tworzenia zapytania w procedurze składowanej.

Następnie wywołaj procedurę w klasycznej funkcji hibernacji:

Query q = em.createNativeQuery("CALL updateRank('lvl')");
q.executeUpdate();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak liczyć unikalnych użytkowników mojej witryny?

  2. Jak używać GROUP_CONCAT w CONCAT w MySQL

  3. Tłumaczenie mongodb dla sql INSERT...SELECT

  4. Zwróć dane z wierszy z najnowszą datą każdego odrębnego identyfikatora kandydata

  5. Jak powinny być przechowywane uniksowe znaczniki czasu w kolumnach int?