作者:桥之西海_744 | 来源:互联网 | 2022-11-30 09:27
我有一个MySQL数据库,列数据为LONGTEXT.它有85.504个字符.当我使用coldfusion查询执行select时,它只返回前64,001个字符.ColdFusion仅限于64,001个字符吗?
selectTest = new query();
selectTest.setDatasource("myDB");
selectTest.setName("selectTest");
selectTest.addParam(name="MyID", value="#arguments.data.MyID#", cfsqltype="cf_sql_integer");
result = selectTest.execute(sql="SELECT MyLongText FROM MyTable WHERE ID = :MyID");
rs = result.getResult();
return rs.MyLongText[1];
这是我的函数,只返回前64,001个字符.
谢谢
1> Alex..:
ColdFusion使用JDBC驱动程序来缓冲从SQL服务器检索的数据.默认情况下,此缓冲区限制为64k字节.如果需要检索更大的数据块,则必须增加缓冲区.
增加缓冲区可以通过允许完整CLOB
/ BLOB
检索(提示:LONGTEXT被认为是这样)或通过手动设置更高的值来增加缓冲区中的最大字节数来完成.
这两件事都可以在ColdFusion的数据源管理(管理员面板)中完成.
编辑:Ageax发布的链接告诉您启用完整CLOB检索的步骤:使用CFQuery检索长文本(CLOB)