Re: figuring out why I am having this issue - Mailing list pgsql-odbc
From | Greg Campbell |
---|---|
Subject | Re: figuring out why I am having this issue |
Date | |
Msg-id | 4317432F.3060702@us.michelin.com Whole thread Raw |
In response to | Re: figuring out why I am having this issue ("Dave Page" <dpage@vale-housing.co.uk>) |
List | pgsql-odbc |
I like the collection construct (for each) If (error.Number <> 0) Then 'and this for-next loop is usually in a handle_db_errors routine instead of typing/pasting it all over my code 'plus it become a one-stop change where I can log the error to a db or file or event_log. For Each dberr in con.Errors Response.Write "An Error occurred................." & <br> & vbCrLf Response.Write "Number: " & CStr(dberr.Number) & <br> & vbCrLf Response.Write "Source: " & dberr.Source & <br> & vbCrLf Response.Write "NativeError: " & CStr(dberr.NativeError) & <br> & vbCrLf Response.Write "Description: " & dberr.Description & <br> Next Response.End End If It's all the same. Dave Page wrote: > > > >>-----Original Message----- >>From: Joel Fradkin [mailto:jfradkin@wazagua.com] >>Sent: 01 September 2005 16:16 >>To: Dave Page >>Cc: pgsql-odbc@postgresql.org >>Subject: RE: [ODBC] figuring out why I am having this issue >> >>That is the error description >>If con.Errors.Count >= 1 Then >> set Error = con.Errors.Item(0) >> 'take the error code from SQL Server >> ErrCode = Error.NativeError >> response.Write(cstr(Error.Description)) >> Response.End >>End If >> >>Could be there is better method, but this what I have been using. > > > Dunno if there's a better method - I would be inclined to loop round > con.Errors.Count though - maybe something like: > > For X = 1 To con.Errors.Count > set Error = con.Errors.Item(X - 1) > 'take the error code from SQL Server > ErrCode = Error.NativeError > response.Write(cstr(Error.Description)) > End If > Response.End > > > > >>I have tested putting a 300 meg text field in the data base >>nad it worked so >>not clear why it works on most data and this one does not. >>I did email you the log file (not sure it is any help). > > > Yeah, I can't see anything obviously wrong in it. A few things to > consider though: > > - ASP seems to be retrieving data as SQL_C_CHAR, which means it's > getting raw data, not UCS2 converted from UTF8. > > - ASP is retrieving data in 32KB chunks, so it would probably be worth > making sure max_long_varchar is at least that. > > - Some data (quotes and such) doesn't look so good. Could it have been > pasted from MS Word or similar? > > - Are you compiling the driver yourself? If so how? It seems to be using > the old comms layer, not libpq (which I'm no longer working on). The > giveaway is lines like the following which are for debugging the network > protocol: > > connecting to the server socket... > connection to the server socket succeeded. > sizeof startup packet = 292 > sent the authentication block. > sent the authentication block successfully. > gonna do authentication > read 15, global_socket_buffersize=8192 > auth got 'R' > areq = 0 > auth got 'K' > auth got 'Z' > > All this is now encapsulated in libpq, which doesn't log what it's > doing. > > To fix this, compile on the command line: > > nmake /f win32.mak > > This should ensure you get the default libpq build. If you're doing this > in an IDE, make sure USE_LIBPQ is defined! > > Regards, Dave. > > ---------------------------(end of broadcast)--------------------------- > TIP 2: Don't 'kill -9' the postmaster
Attachment
pgsql-odbc by date: