我正在执行数据库工具箱提取功能,只需
curs = exec(conn,sqlQuery);
fetched = fetch(curs);
因此应该获得无限的默认最大行限制,但该函数仅返回90,000行(应该超过180k)。
有谁知道为什么获取功能会截断我的结果?
感谢。
答案 0 :(得分:0)
您应尝试使用以下方法限制批量大小:
bsize = 80000; %where bsize < NumberOfRow
setdbprefs('FetchInBatches','yes') %you divide your result into smaller part.
setdbprefs('FetchBatchSize','h') %you fix the size of each part
curs = exec(conn,sqlQuery);
fetched = fetch(curs);
如果它仍然无法正常工作,则matlab的变量可能无法支持此数据量,因此您可以将最后一行替换为:
vsize = 85000; %variable size
fetched = fetch(curs,vsize);