<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div class="moz-cite-prefix">
<div class="moz-cite-prefix">On 09/03/2022 10.03, Tom Lane wrote:<br>
</div>
<blockquote type="cite" cite="mid:515148(dot)1646838226(at)sss(dot)pgh(dot)pa(dot)us"><br>
<pre class="moz-quote-pre" wrap="">I concur with David's opinion that if you think you need more
parameters, you're doing it wrong. One idea to consider is
aggregating similar values into an array parameter.</pre>
</blockquote>
<br>
I disagree:<br>
<br>
1. It is extremely convenient to insert multiple values in a
single SQL insert:<br>
<p><b>INSERT INTO table_name (f1,f2,f3) VALUES (1,"text",2.4),
(2,"text2",2.5),...</b></p>
Setting all values as JDBC parameters is the easiest way to
integrate java/scala and SQL. <br>
A single insert of 10000 records is several orders of magnitudes <b>faster</b>
than 10000 separate inserts, not to mention transaction
simplification.<br>
<br>
2. For automatic scala<->jdbc integration tools such as <a
class="moz-txt-link-freetext"
href="https://github.com/mal19992/sqlps">https://github.com/mal19992/sqlps</a>
a number of JDBC arguments can be generated by an automatic
transformation, the SQL and JDBC arguments are autogenerated and
can be a very large number. <br>
Suggested by David approach "like using a temp table and a join
instead of an IN operator." is extremely inconvenient for
automatic tools.<br>
<br>
Vladislav<br>
</div>
</body>
</html>