vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi, I am testing PostgreSQL 8.0.1. I compiled and installed it. Downloaded JDBC driver postgresql-8.0-310.jdbc3.jar for JDK 1.4.(I was unable to find it in source) Dumped my 7.3.3 database. Restored it in new installation. Run the application and it gives this error. The error is when I use setString() to insert into a numeric field. I hope it is bug. Otherwise we have to rewrite our application. The error message can be seen in server log also. rgds Antony Paul ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq |
| |||
| Hi, Antony, Antony Paul schrieb: > I am testing PostgreSQL 8.0.1. I compiled and installed it. > Downloaded JDBC driver postgresql-8.0-310.jdbc3.jar for JDK 1.4.(I was > unable to find it in source) Dumped my 7.3.3 database. Restored it in > new installation. Run the application and it gives this error. > The error is when I use setString() to insert into a numeric > field. I hope it is bug. Otherwise we have to rewrite our application. > The error message can be seen in server log also. Using setString() to insert anything else from text types is not possible any more using pgjdbc 8.0 jars, as the new driver makes stricter use of type checking. One of our third-party apps also suffers from this problems. I can three solutions / workarounds for your problem: - Use the pgjdbc 7.4 jar file, it should work fine against a postgresql 8.0 server. You can also stay with the 7.3 jar you used against your 7.3.3 server, as AFAIK pg8.0 still supports the V2 query protocol. - Use a "?::numeric" cast in your prepared statement (not tested here). - Update your application to use the proper numeric types. Markus -- markus schaber | dipl. informatiker logi-track ag | rennweg 14-16 | ch 8001 zürich phone +41-43-888 62 52 | fax +41-43-888 62 53 mailto:schabios@logi-track.com | www.logi-track.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFCDJDROVWsnapT9i0RAmmpAKDi/xQyBwU/FXpGSBu672y13MqKXQCfX3HX 7cElxPQ8IOWG6oUEc5wBjhI= =v5tv -----END PGP SIGNATURE----- |
| |||
| Updating application is going to be a lot of work. If it breaks existing applications why it is implemented. I dont think type checking is a big thing. What is its use ?. I will try 7.4 driver. rgds Antony Paul On Fri, 11 Feb 2005 12:02:41 +0100, Markus Schaber <schabios@logi-track.com> wrote: > Hi, Antony, > > Antony Paul schrieb: > > > I am testing PostgreSQL 8.0.1. I compiled and installed it. > > Downloaded JDBC driver postgresql-8.0-310.jdbc3.jar for JDK 1.4.(I was > > unable to find it in source) Dumped my 7.3.3 database. Restored it in > > new installation. Run the application and it gives this error. > > The error is when I use setString() to insert into a numeric > > field. I hope it is bug. Otherwise we have to rewrite our application. > > The error message can be seen in server log also. > > Using setString() to insert anything else from text types is not > possible any more using pgjdbc 8.0 jars, as the new driver makes > stricter use of type checking. One of our third-party apps also suffers > from this problems. > > I can three solutions / workarounds for your problem: > > - Use the pgjdbc 7.4 jar file, it should work fine against a postgresql > 8.0 server. You can also stay with the 7.3 jar you used against your > 7.3.3 server, as AFAIK pg8.0 still supports the V2 query protocol. > > - Use a "?::numeric" cast in your prepared statement (not tested here). > > - Update your application to use the proper numeric types. > > Markus > > -- > markus schaber | dipl. informatiker > logi-track ag | rennweg 14-16 | ch 8001 zürich > phone +41-43-888 62 52 | fax +41-43-888 62 53 > mailto:schabios@logi-track.com | www.logi-track.com > > > ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) |
| |||
| Now I understand why 8.0 drive dont print query parameters in the server log while 7.4 prints query parameters since 8.0 uses real prepared statements. rgds Antony Paul On Fri, 11 Feb 2005 12:37:25 +0100, Markus Schaber <schabios@logi-track.com> wrote: > Hi, Antony, > > Antony Paul schrieb: > > Updating application is going to be a lot of work. If it breaks > > existing applications why it is implemented. I dont think type > > checking is a big thing. What is its use ?. > > I'm not 100% shure, as I'm no jdbc developer, but I think the 8.0 driver > consequently uses server-side prepared statements from V3 protocol, for > speed benefits, and thus needs all typing information. (I do not know > whether it is possible to send untyped parameters via this approach.) > > Markus > -- > markus schaber | dipl. informatiker > logi-track ag | rennweg 14-16 | ch 8001 zürich > phone +41-43-888 62 52 | fax +41-43-888 62 53 > mailto:schabios@logi-track.com | www.logi-track.com > > > ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings |
| |||
| Hi, Antony, Antony Paul schrieb: > Updating application is going to be a lot of work. If it breaks > existing applications why it is implemented. I dont think type > checking is a big thing. What is its use ?. I'm not 100% shure, as I'm no jdbc developer, but I think the 8.0 driver consequently uses server-side prepared statements from V3 protocol, for speed benefits, and thus needs all typing information. (I do not know whether it is possible to send untyped parameters via this approach.) Markus -- markus schaber | dipl. informatiker logi-track ag | rennweg 14-16 | ch 8001 zürich phone +41-43-888 62 52 | fax +41-43-888 62 53 mailto:schabios@logi-track.com | www.logi-track.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFCDJj1OVWsnapT9i0RAiUqAJ9O8g00w70TjkC/RoTjzKvHkEw6qQCgkPU3 iTsblc9VqBIXrapcbPYorj4= =lCFb -----END PGP SIGNATURE----- |
| ||||
| 7.3.3 driver have problem in set autocommit. I used setString() for number in Oracle 8i. rgds Antony Paul On Fri, 11 Feb 2005 12:02:41 +0100, Markus Schaber <schabios@logi-track.com> wrote: > Hi, Antony, > > Antony Paul schrieb: > > > I am testing PostgreSQL 8.0.1. I compiled and installed it. > > Downloaded JDBC driver postgresql-8.0-310.jdbc3.jar for JDK 1.4.(I was > > unable to find it in source) Dumped my 7.3.3 database. Restored it in > > new installation. Run the application and it gives this error. > > The error is when I use setString() to insert into a numeric > > field. I hope it is bug. Otherwise we have to rewrite our application. > > The error message can be seen in server log also. > > Using setString() to insert anything else from text types is not > possible any more using pgjdbc 8.0 jars, as the new driver makes > stricter use of type checking. One of our third-party apps also suffers > from this problems. > > I can three solutions / workarounds for your problem: > > - Use the pgjdbc 7.4 jar file, it should work fine against a postgresql > 8.0 server. You can also stay with the 7.3 jar you used against your > 7.3.3 server, as AFAIK pg8.0 still supports the V2 query protocol. > > - Use a "?::numeric" cast in your prepared statement (not tested here). > > - Update your application to use the proper numeric types. > > Markus > > -- > markus schaber | dipl. informatiker > logi-track ag | rennweg 14-16 | ch 8001 zürich > phone +41-43-888 62 52 | fax +41-43-888 62 53 > mailto:schabios@logi-track.com | www.logi-track.com > > > ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings |