Thread: Error: Input string was not in a correct format
Hi guys, I'm trying to call a function from my .NET project and I am getting this error: "Input string was not in a correct format". I have checked to make sure that I am not mismatching my parameters. Is there a way that I can see the actual SQL query that is being sent to postgresql? Once I can see this then perhaps I can find the little gremlin that is annoying me :-) Thanks, Rommel Edwards Software Developer, Barbados, Caribbean.
Ok guys, Sorry for the false alarm. I solved the problem. When I define my parameters in .NET in the order they are listed in pgAdmin, the function call works. If I use the order that they are listed in Visual Studio's Server Explorer, the function call fails. It appears Visual Studio's Server explorer is listing my function parameters incorrectly. Thanks anyways. Rommel Edwards Software Developer, Barbados, Caribbean.
On May 7, 2007, at 18:17 , Rommel the iCeMAn wrote: > Is there a way that I can see > the actual SQL query that is being sent to postgresql? From within PostgreSQL you can put the SQL queries in the logs. http://www.postgresql.org/docs/8.2/interactive/runtime-config- logging.html#RUNTIME-CONFIG-LOGGING-WHAT Check out the log_statement paramenter (and possibly others). You might also have some logging options within .NET, but as I'm unfamiliar with the framework, I really can't help you there. Michael Glaesemann grzm seespotcode net
"Rommel the iCeMAn" <icecrew@gmail.com> writes: > I'm trying to call a function from my .NET project and I am getting this > error: "Input string was not in a correct format". I have checked to make > sure that I am not mismatching my parameters. Is there a way that I can see > the actual SQL query that is being sent to postgresql? Once I can see this > then perhaps I can find the little gremlin that is annoying me :-) FWIW, I can't find that error string (or even one using the phrase "correct format") anywhere in the core PG code. So it's coming from somewhere on the client side, unless you've got some third-party library loaded into the backend. regards, tom lane
Hi Michael & Tom, First of all, thanks to Michael for your response. I did enable logging of SQL queries but still I could find no SQL statements in the logs. This led me to believe it was a client-side error. Then I saw the response from Tom which confirmed what I was thinking, so my second set of thank-you's goes out to Tom. I declared a function as follows: test_func(integer, character varying, integer, character varying). I used Visual Studio's Server Explorer to view the function and it showed up as test_func(integer, integer, character varying, character varying). The problem is that Server Explorer groups parameters together according to data type. If you follow the function declaration according to Server Explorer, you will end up with mismatched parameters. If you follow the function declaration according to pgAdmin, your code will work. From now on, at least until the problem in .NET is fixed, I will be using pgAdmin to view my functions instead of Visual Studio's Server Explorer. FYI, I am using CoreLab's PostgreSQL.NET drivers, I've reported the issue to them as well. At the time I didn't know if it was an issue with the .NET drivers or with PostgreSQL so I reported my findings to this forum as well as theirs. Ok then, that's a mouthful, thanks again guys for the help. Rommel Edwards, Barbados, (sunny) Caribbean.