From: | "Jens Sorensen (Intuii)" <JensSorensen(at)Intuii(dot)com> |
---|---|
To: | 'Adrian Klaver' <adrian(dot)klaver(at)aklaver(dot)com>, <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Re: PSQLODBC.DLL - The (maximum) expected data length is 8000, while the returned data length is 9606. |
Date: | 2015-07-28 06:18:37 |
Message-ID: | ca4501d0c8fd$4029b2a0$c07d17e0$@Intuii.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Thanks,
I've replaced the 'text' column.
Here is the error messages when I use 'varchar(max)':
Msg 7347, Level 16, State 1, Procedure RetrieveHttpEvents, Line 18
OLE DB provider 'MSDASQL' for linked server '(null)' returned data that does not match expected data length for column '[MSDASQL].uri'. The (maximum) expected data length is 8000, while the returned data length is 9606.
And here is the error messages when I use 'varchar(max)':
Msg 7347, Level 16, State 1, Procedure RetrieveHttpEvents, Line 18
OLE DB provider 'MSDASQL' for linked server '(null)' returned data that does not match expected data length for column '[MSDASQL].uri'. The (maximum) expected data length is 8000, while the returned data length is 9606.
So unfortunately this does not appear to have made a difference.
Here is my current query on SQL Server:
INSERT http_events
SELECT *
FROM openrowset
(
'MSDASQL',
'Dsn=PostgreSQL35W;',
'Select
event_id,
time_stamp,
session_id,
client_intf,
server_intf,
c_client_addr,
s_client_addr,
c_server_addr,
s_server_addr,
c_client_port,
s_client_port,
c_server_port,
s_server_port,
policy_id,
username,
hostname,
request_id,
method,
uri,
host,
c2s_content_length,
s2c_content_length,
s2c_content_type,
adblocker_blocked,
adblocker_cookie_ident,
adblocker_action,
webfilter_reason,
webfilter_category,
webfilter_blocked,
webfilter_flagged,
sitefilter_reason,
sitefilter_category,
sitefilter_blocked,
sitefilter_flagged,
clam_clean,
clam_name,
virusblocker_clean,
virusblocker_name
FROM reports.http_events AS log'
)
What additional information can I provide you that would be useful?
-----Original Message-----
From: Adrian Klaver [mailto:adrian(dot)klaver(at)aklaver(dot)com]
Sent: Monday, July 27, 2015 9:47 AM
To: Jens Sorensen <JensSorensen(at)Intuii(dot)com>; pgsql-odbc(at)postgresql(dot)org
Subject: Re: [ODBC] PSQLODBC.DLL - The (maximum) expected data length is 8000, while the returned data length is 9606.
On 07/27/2015 09:16 AM, Jens Sorensen wrote:
> Hmm when I inserted the values into a table I believe it produced a
> column of nvarchar(4000). 4000 appears to be the max for nvarchar in
> SQL Server. However I changed the table to use type text instead, and
> it did not appear to affect the error message any.
First, as I understand it text is deprecated in SQL Server:
https://msdn.microsoft.com/en-us/library/ms187993.aspx
The 8000 limit you are hitting is seems to the upper limit of SQL Server
varchar() unless you specify max:
https://msdn.microsoft.com/en-us/library/ms176089.aspx
So I wonder if somewhere along the line varchar(8000) is being substituted for text()?
This will need a more detailed description of what you are doing to answer.
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2015-07-28 13:16:45 | Re: PSQLODBC.DLL - The (maximum) expected data length is 8000, while the returned data length is 9606. |
Previous Message | Adrian Klaver | 2015-07-27 16:47:22 | Re: PSQLODBC.DLL - The (maximum) expected data length is 8000, while the returned data length is 9606. |