Path: nntp.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail From: =?UTF-8?Q?Arne_Vajh=C3=B8j?= Newsgroups: comp.os.vms Subject: Re: VMS x86-64 database server Date: Fri, 11 Jul 2025 19:43:59 -0400 Organization: A noiseless patient Spider Lines: 36 Message-ID: <104s7jv$1ohh3$1@dont-email.me> References: <104ejo8$2cobv$1@dont-email.me> <686af3b4$0$686$14726298@news.sunsite.dk> <104f0a6$2gn2r$5@dont-email.me> <104f2ic$2h75q$2@dont-email.me> <104fc66$2n4ir$2@dont-email.me> <104h2d1$31cae$2@dont-email.me> <104hgeh$3474l$11@dont-email.me> <686d1e94$0$694$14726298@news.sunsite.dk> <104k45l$3p7d8$7@dont-email.me> <686d99c2$0$694$14726298@news.sunsite.dk> <104ka38$3qkfr$4@dont-email.me> <104kd99$3r3fk$1@dont-email.me> <104l5bb$4bv9$1@dont-email.me> <686f0392$0$686$14726298@news.sunsite.dk> <686f0862$0$686$14726298@news.sunsite.dk> <104n5dp$gs8r$4@dont-email.me> <686f24cc$0$686$14726298@news.sunsite.dk> <104nk87$n9hb$1@dont-email.me> <68704945$0$690$14726298@news.sunsite.dk> <104pjs9$14565$2@dont-email.me> <104plu4$13i9u$4@dont-email.me> <104s736$1o14i$12@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 12 Jul 2025 01:44:00 +0200 (CEST) Injection-Info: dont-email.me; posting-host="eddbecc7fa4c2c1c40d10e4c19408638"; logging-data="1852963"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19TJvpncHa6Iu++Zf6rltQB6dQAkuZKsgQ=" User-Agent: Mozilla Thunderbird Cancel-Lock: sha1:VzWS1MgDiURIVf1MV4zRkdbl2EQ= Content-Language: en-US In-Reply-To: <104s736$1o14i$12@dont-email.me> On 7/11/2025 7:35 PM, Lawrence D'Oliveiro wrote: > On Thu, 10 Jul 2025 20:29:56 -0400, Arne Vajhøj wrote: > You can save a lot of code by using ORM. >> >> Example (Groovy and JPA): >> >> jpadata = em.createQuery("SELECT DISTINCT o FROM OrdersJPA AS o JOIN >> FETCH o.orderLines ol", OrdersJPA.class).getResultList() >> >> Gives you a list of order objects that each has a list of order lines >> objects. > > I thought the whole point of an ORM was to get away from having to hand- > construct SQL queries. And yet you have done exactly that. That is not SQL but HQL. :-) No. ORM's either comes with its own query language or allow usage of SQL or have an equivalent fluent API or support more than one of those. The main point of ORM is to avoid boilerplate code like iterating and result sets and stuff them into the object data structure. Some ORM's operate with a dirty concept and automatically save changed objects. Some ORM's provide identical syntax for doing things even though the underlying databases have different SQL syntax for it, which help making the application more portable. Arne