final int fetch = resultSet.getFetchSize();
final List<SqlRow> rows = new ArrayList<SqlRow>(fetch);
this.sqlDatas = new ArrayList<SqlData[]>(fetch);
int rowIndex = 0;
for (; resultSet.next(); rowIndex++) {
final SqlRow sqlRow = new SqlRowImpl(this, rowIndex);
final SqlData[] row = new SqlData[columnCount];
rows.add(sqlRow);
sqlDatas.add(row);
for (int columnIndex = 0; columnIndex < columnCount; columnIndex++) {
row[columnIndex] = new SqlDataImpl(this, sqlRow, columns.get(columnIndex), resultSet);