Запрос Perl DBI возвращает странный текст - PullRequest
0 голосов
/ 03 декабря 2018

Я пытаюсь использовать Perl DBI для запроса таблицы базы данных на SQL Server.

$SQLQuery = 'SELECT ETSRCCONID,CONNSTRING FROM ETSRCCON';
$sth=$dbh->prepare($SQLQuery);
$sth->execute();
$sth->{'LongReadLen'} = 200000000;
$sth->{'LongTruncOk'} = 1;
while(@data=$sth->fetchrow_array()) {print "$data[1]\n"}

Однако возвращаемые значения выглядят примерно так, как показано ниже, и значения по-прежнему усечены для большинства из них, хотя некоторые из них на самом деле верны.

Provider=OraOLEDB.Oracle;Data Source=QOFSAEX2OL;User ID=QOFSA_RO_QA3

P r o v i d e r = D T S F l a t F i l e ; D a t a   S o u r c e = \ \ p q r m s h a r e \ Q R M _ U s e r s _ D r i v e \ D a n   P a r r e t t \ N S F R \ G

P r o v i d e r = D T S F l a t F i l e ; D a t a   S o u r c e = \ \ p q r m s h a r e \  Q R M _ U s e r s _ D r i v e \ M a r k e t   R i s k \ B a c k t e

Яожидая что-то вроде

Provider=DTSFlatFile;Data Source=\\pqrmshare\QRM_Users_Drive\btyler\FTP_Export.txt;File Type=1;Mode=Read;Max characters per delimited column=255

Текст varchar(max) с SQL_Latin1_General_CP1_CI_AS Collation в SQL Server 2014, если это имеет значение.

Может ли кто-нибудь помочь мне понять причину этого ирешение?

...