perl的dbi数据访问odbc读取sqlserver数据被截断的问题
来源:互联网 发布:交友软件哪个最好 编辑:程序博客网 时间:2024/05/29 03:05
select时报错
DBD::ODBC::st fetchrow_arrayref failed: st_fetch/SQLFetch (long truncated DBI attribute LongTruncOk not set and/or LongReadLen too small) (SQL-HY000)
这种情况加上
$dbh_mssql->{LongTruncOk} = 1;
可以解决。
但是这种方式会截断字符串。
我不想截断字符串,想要完整的读取出来。看了下资料 说是可以设置Long的长度。
使用如下:
$dbh_mssql->{LongReadLen} = 512 *1024;
单独使用时无效。
还是报同样的错误。
$dbh_mssql->{LongReadLen} = 512 *1024;
$dbh_mssql->{LongTruncOk} = 0;
时还是报错
但是跟 $dbh_mssql->{LongTruncOk} = 1;一起使用时就没问题 只是还是会截断。
DBD::ODBC::st fetchrow_arrayref failed: st_fetch/SQLFetch (long truncated DBI attribute LongTruncOk not set and/or LongReadLen too small) (SQL-HY000)
这种情况加上
$dbh_mssql->{LongTruncOk} = 1;
可以解决。
但是这种方式会截断字符串。
我不想截断字符串,想要完整的读取出来。看了下资料 说是可以设置Long的长度。
使用如下:
$dbh_mssql->{LongReadLen} = 512 *1024;
单独使用时无效。
还是报同样的错误。
$dbh_mssql->{LongReadLen} = 512 *1024;
$dbh_mssql->{LongTruncOk} = 0;
时还是报错
但是跟 $dbh_mssql->{LongTruncOk} = 1;一起使用时就没问题 只是还是会截断。
还是说 我这里的len长度还不够? 2048*2048还是不行
结果 跟数据类型有关。
$sql_select ="select top 5 [name] , [address] , [developer] , CAST([othercondition] as TEXT), [projectsquare] , [usinglandarea] from new_baseinfo";
注意红色部分。
原来还涉及到数据类型的问题。把被截断的字段改为text。
然后设置。
my $dbh_mssql=DBI->connect("dbi:ODBC:$source_name",$source_user_name,$source_user_psd);
$dbh_mssql->{LongTruncOk}=1;
$dbh_mssql->{LongReadLen} = 1048576*1024;
print "LongReadLen: $dbh_mssql->{LongReadLen}\n";
就可以了
参考资料:
http://blog.csdn.net/aylazhang/article/details/1707745
http://www.freetds.org/userguide/troubleshooting.htm
- perl的dbi数据访问odbc读取sqlserver数据被截断的问题
- 使用 Excel ODBC driver读取超过255的字符,数据可能被截断
- sqlserver连接服务器读取Oracle数据,sqlserver读取oracle的ODBC配置
- 读取Excel数据截断问题
- 使用JDBC-ODBC连接SQLServer数据库后读取数据库中表的数据代码
- 数据的截断
- 解决“串口接收数据时被截断”的问题
- nginx代理出现数据被截断的问题
- PHP返回数据被nginx截断问题的解决方法
- 数据转换时字符被截断的问题
- 记录一次解决PHP返回数据被nginx截断的问题
- perl--DBI 模块中提取数据的fetch方法汇总(三)
- Perl DBI模块的例子
- 数据的扩展与截断
- 安装perl和DBI-mysql出现的一些问题
- Perl DBI数据库访问
- 遇到的问题----DBI的ODBC报错运行perl脚本时报错:[unixODBC][Driver Manager]Data source name not found, and no default
- SQLServer 读取XML类型的节点数据
- UVa:1428 Ping pong (树状数组)
- rqnoj-多人背包
- 读取jar包内外的配置文件
- 【wordpress】在wordpress中插入表格
- 关于Gdi+和GdiplusStartup
- perl的dbi数据访问odbc读取sqlserver数据被截断的问题
- Code Forces 276 B. Little Girl and Game 贪心
- Floyd求最短路+输出路径上节点
- juniper SSG路由对个别用户(组)限速配置
- duilib做的一个程序
- 我对VC维的理解
- KVM虚拟机三大存储模式
- UVa 12250 Language Detection (water ver.)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)