minor fixes to docs

This commit is contained in:
Gavin King 2022-01-02 02:35:31 +01:00
parent de7aaa88dc
commit 648dac628f
4 changed files with 15 additions and 14 deletions

View File

@ -196,11 +196,11 @@ JPQL-style ordinal parameters are numbered from `1`.
Just like with named parameters, a ordinal parameter may appear multiple times in a query.
[[jpql-api-ordinal-parameter-example]]
.Positional parameter binding
.Ordinal parameter binding
====
[source, JAVA, indent=0]
----
include::{sourcedir}/HQLTest.java[tags=jpql-api-positional-parameter-example]
include::{sourcedir}/HQLTest.java[tags=jpql-api-ordinal-parameter-example]
----
====
@ -415,7 +415,7 @@ See the https://docs.jboss.org/hibernate/orm/{majorMinorVersion}/javadocs/org/hi
//
//[source, JAVA, indent=0]
//----
//include::{sourcedir}/HQLTest.java[tags=hql-api-positional-parameter-example]
//include::{sourcedir}/HQLTest.java[tags=hql-api-ordinal-parameter-example]
//----
//====
//

View File

@ -1761,15 +1761,16 @@ Just like in SQL, `all` suppresses the elimination of duplicate results.
By default, the results of the query are returned in an arbitrary order.
The `order by` clause specifies a list of selected items used to order the results.
The types of expressions considered valid as part of the `order by` clause include:
Each item may be:
* attributes of an entity or embeddable class,
* scalar expressions such as arithmetic operations, functions, etc, and
* identification variables declared in the select clause.
* an attribute of an entity or embeddable class,
* a scalar expression involving arithmetic operators, function application, etc,
* an alias declared in the select list, or
* an integers indicating the ordinal position of an item in the select list.
[NOTE]
====
The JPQL specification requires that all expressions occurring the `order by` clause must also occur in the `select` clause.
The JPQL specification requires that every expression in the `order by` clause must also occur in the `select` clause.
HQL does not enforce this restriction, but applications desiring database portability should be aware that some databases _do_.
====
@ -1804,7 +1805,7 @@ The `limit` and `offset` clauses are an alternative to the use of `setMaxResults
[TIP]
====
If the `limit` or `offset` is parameterized, its much easier to use `setMaxResults()` or `setFirstResult()`.
If the `limit` or `offset` is parameterized, it's much easier to use `setMaxResults()` or `setFirstResult()`.
====
The SQL syntax `fetch first ... rows only` and `fetch next ... rows only` is also allowed.

View File

@ -364,7 +364,7 @@ There's no such equivalent in Jakarta Persistence because the `jakarta.persisten
[[sql-query-parameters]]
=== Parameters
Native SQL queries support positional as well as named parameters:
Native SQL queries support ordinal as well as named parameters:
[[sql-jpa-query-parameters-example]]
.Jakarta Persistence native query with parameters

View File

@ -753,14 +753,14 @@ public class HQLTest extends BaseEntityManagerFunctionalTestCase {
@Test
public void test_jpql_api_positional_parameter_example() {
doInJPA( this::entityManagerFactory, entityManager -> {
//tag::jpql-api-positional-parameter-example[]
//tag::jpql-api-ordinal-parameter-example[]
TypedQuery<Person> query = entityManager.createQuery(
"select p " +
"from Person p " +
"where p.name like ?1",
Person.class )
.setParameter( 1, "J%" );
//end::jpql-api-positional-parameter-example[]
//end::jpql-api-ordinal-parameter-example[]
});
}
@ -928,14 +928,14 @@ public class HQLTest extends BaseEntityManagerFunctionalTestCase {
doInJPA( this::entityManagerFactory, entityManager -> {
Date timestamp = new Date( );
QueryProducer session = entityManager.unwrap( Session.class );
//tag::hql-api-positional-parameter-example[]
//tag::hql-api-ordinal-parameter-example[]
org.hibernate.query.Query<Person> query = session.createQuery(
"select p " +
"from Person p " +
"where p.name like ?",
Person.class )
.setParameter( 1, "J%" );
//end::hql-api-positional-parameter-example[]
//end::hql-api-ordinal-parameter-example[]
});
}