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

wybierz zapytanie w stanie hibernacji z klauzulą ​​where

1) Używasz HQL, więc musisz zrozumieć, że nie możesz podać nazw kolumn, które są w bazie danych w projekcjach zapytania HQL

 String hql = "select user_id from login where user_name= :username and  
            password= :password";

Tutaj w twojej klasie logowania nie masz pola jako user_id i podałeś user_id HQL mapuje klasę z bazą danych, stąd klasa Login będzie logować tabelę, a pole userId będzie kolumną user_id w bazie danych. A to, co napisałeś, jest zwykłym zapytaniem SQL, a nie zapytaniem HQL.

Użyj tego zapytania HQL.

String hql="Select log.userId from Login log where log.username=:username and log.password=:password"

Tutaj log to nazwa aliasu, tak jak robimy to w zwykłej Javie.

Login log=new Login()
log.userId


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP generuje dynamiczną wstawkę PDO

  2. Zapytanie MySQL — rekordy od dnia dzisiejszego do ostatnich 30 dni

  3. Jak wstawić tablicę do pojedynczej instrukcji MySQL Prepared z PHP i PDO

  4. Wybierz różne wartości na podstawie kolumny z maksymalną wartością daty z drugiej kolumny

  5. Dynamiczne tworzenie warunków OR poprzez przekazanie tablicy do zapytania w MySQL PHP