SQL Statement is the main problem for this IndexOutOfRange Error
Pls Check your sql querry, The IndexOutOfRange Error raises only when if you are trying to retrieve the column which is not mentioned in the sql querry.
Example :
SELECT EMPNO, ENAME, SAL FROM EMP
The above is your sql statement and you are trying retrieve the data from the column which is present in your data table but not in your sql statement such HIREDATE, MGR etc.
i hope this article will solve your issue