Re: Upgrade to pg and driver version 8.x code compatibilities
От | Oliver Jowett |
---|---|
Тема | Re: Upgrade to pg and driver version 8.x code compatibilities |
Дата | |
Msg-id | 427A9E97.9090307@opencloud.com обсуждение исходный текст |
Ответ на | Upgrade to pg and driver version 8.x code compatibilities (Tom Arthurs <tarthurs@jobflash.com>) |
Список | pgsql-jdbc |
Tom Arthurs wrote: > ERROR: column "job_experience" is of type smallint but expression is of > type character varying Most likely you are using setString() where you should be using setShort(). > 1. What changed between the driver versions that generate this error? The driver started to use server-side prepared statements for parameterization of queries (i.e. the driver translates ? to $n in the main query string, and sends the actual parameter values out-of-band from the query itself). One sideeffect of this is that parameters are more strongly typed than in the 7.4.x versions where the driver would do literal parameter substitution into the query string before sending it to the backend. Also, you can use parameters in fewer places (they must fit the backend's idea of where parameterizable expressions are allowed) -- e.g. see the recent thread about "ORDER BY ?" changing behaviour with the newer driver. > 2. What is the downside of continuing to use the 7.x version of the > driver -- or are there better alternatives (patch, new version, etc). I > am using build 311 of the driver. Most active development happens on the 8.0 version; 7.4.x is maintained for bugfixes but that's about it, you won't get the benefit of any performance improvements or added features that go into 8.0. Also, the 7.4.x driver won't necessarily work with servers >= 8.0. In the longer term, the 7.4.x version will eventually become unmaintained. -O
В списке pgsql-jdbc по дате отправления: