Thanks for the explanation, Clement. Please file a JIRA - it seems that
your suggestion would be ok based on the javadoc for prepareStatement(String
sql, int autoGeneratedKeys) [1]:
This parameter is ignored if the SQL statement is not an INSERT
statement, or an SQL statement able to return
auto-generated keys (the list of such statements is vendor-specific).
We should probably do the same for the one that takes an int[]
columnIndexes too.
Patch would be good too with a couple of simple unit tests.
Thanks,
James
[1]
https://docs.oracle.com/javase/7/docs/api/java/sql/Connection.html#prepareStatement(java.lang.String,%20int)
On Mon, Nov 23, 2015 at 2:18 AM, Clement Escoffier <[email protected]>
wrote:
> Hi James,
>
> Sorry for the delay, I tried to get a complete overview of our issue.
>
> So let me explain the use case. For the context, the issue was raised by a
> user of vert.x (http://vertx.io). This user tries to connect the
> vertx-jdbc-client to phoenix. A vert.x application cannot use directly the
> JDBC driver because it promotes an asynchronous and non-blocking
> development model (while jdbc interactions are blocking). The
> vertx-jdbc-client is using ` `prepareStatement(String sql, int
> autoGeneratedKeys)` which throws an exception.
>
> Actually, in the vert.x case, it would be acceptable to delegate
> `prepareStatement(String sql, int autoGeneratedKeys)` to
> `prepareStatement(String sql)`, and totally ignore the `autoGeneratedKeys`.
> Would this be acceptable for you (if so I would do a PR) ?
>
> Thanks and Regards,
>
> Clement
>
> On 20 novembre 2015 at 17:37:36, James Taylor ([email protected])
> wrote:
>
> Hi Clement,
> Can you tell us a little more about your use case and how you'd
> like prepareStatement(String sql, int autoGeneratedKeys) to behave?
> Thanks,
> James
>
> On Fri, Nov 20, 2015 at 2:31 AM, clement escoffier <[email protected]>
> wrote:
>
>> Hello,
>>
>> I’m facing an issue with the prepared statement support. Right now, we
>> are trying a build a prepared statement using the `prepareStatement(String
>> sql, int autoGeneratedKeys)` method. This method is not supported by the
>> Phoenix JDBC driver. Is it something you plan to support ?
>>
>> Thanks & Regards,
>>
>> Clement
>>
>
>