PDF (美式信紙) - 1.2Mb
PDF (A4) - 1.2Mb
除了 fetchOne()
使用模式(在 第 9.3 節「使用資料集」 中說明)允許應用程式逐一使用資料項目之外,X DevAPI 也提供使用 fetchAll()
的模式,它會將資料集的所有資料項目以清單形式傳遞給應用程式。不同的 X DevAPI 實作會使用其程式設計語言的適當資料類型來表示清單。由於使用不同的資料類型,因此支援語言的原生結構來存取清單元素。以下範例假設存在 test
schema,且 employee 資料表存在於 myTable
中。
var myResult = myTable.select(['name', 'age']).
where('name like :name').bind('name','L%').
execute();
var myRows = myResult.fetchAll();
for (index in myRows){
print (myRows[index].name + " is " + myRows[index].age + " years old.");
}
當混合使用 fetchOne()
和 fetchAll()
從一個資料集讀取資料時,請記住,每次呼叫 fetchOne()
或 fetchAll()
都會使用傳回的資料項目。已使用的項目無法再次請求。例如,如果應用程式呼叫 fetchOne()
來擷取資料集的第一個資料項目,然後後續呼叫 fetchAll()
,則會傳回第二個到最後一個資料項目。第一個項目不屬於 fetchAll()
傳回的資料項目清單。同樣地,在先前呼叫後再次針對資料集呼叫 fetchAll()
時,第二次呼叫會傳回空集合。
使用 fetchAll()
會強制 Connector 先在記憶體中建立所有項目的清單,然後才能將整個清單傳遞給應用程式。清單的生命週期獨立於產生清單的資料集的生命週期。