HQL 中的 CreateSQLQuery 是否与数据库无关

Is CreateSQLQuery in HQL is Database independant

任何人都可以帮助我理解,CreateSQLHQL 中的查询是独立于数据库的

请使用 CreateSQLQuery 在下面找到 SQLServer 的本机 SQL 示例,将来如果我需要迁移到 Oracle,我需要做任何代码更改吗?比将字符串连接到数据库。

本机示例 SQL 服务器

Query query = session.createSQLQuery(
   "select * from stock s where s.stock_code = :stockCode")
   .addEntity(Stock.class)
   .setParameter("stockCode", "7277");
List result = query.list();

由 createSQLQuery 创建的本机 SQL 查询依赖于数据库。如果你想要一个独立于数据库的代码,你应该使用 HQL or Criteria queries.