Well you could certainly count the number of rows beforehand, SQL lets you do SELECT COUNT(*)...
But if you don't you can use the dynamic Array class and just use Add() to increase the size as you add each row. If you use just the pointer (String **) then you need to re-allocate the memory for the pointer (renew in eC: array = renew array String*[newRowsCount]).
-Jerome