2016-08-11 73 views
0

我執行數據庫工具箱取功能作爲根本MATLAB數據庫工具箱中取最大行限制

curs = exec(conn,sqlQuery); 
fetched = fetch(curs); 

,因此應該得到無窮的默認最大行限制,但是該功能只能返回90000行(有應該超過180k)。

有誰知道爲什麼函數會截斷我的結果嗎?

謝謝。

+0

你確定問題不在服務器端嗎? – obchardon

+0

如果它不是服務器端的問題,那麼你應該閱讀:[this](http://ch.mathworks.com/help/database/ug/preference-settings-for-large-data-import.html) – obchardon

回答

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);