I have the following small test application (Lazarus) that simply retrieves data form an oracle data base which contains 7 columns in the table:
Code: Select all
session := TOraSession.Create(nil);
qry := TOraQuery.Create(nil);
qry.session := session;
Session.ConnectString := 'testUser/Oracle123@//192.168.1.70/orcldv.testOracle.com';
Session.Connect;
Writeln('CONNECTED TO ORACLE');
Session.AutoCommit := true;
qry.Autocommit := true;
qry.sql.text := 'select column1, column2, column3, column4, column5, column6, column7 from table_test';
Writeln(qry.sql.text);
qry.Open;
qry.last;
qry.first;
Writeln('Columns retrieved : ', qry.fields.count); //THIS RETURNS 6, should be 7 rather?
while not qry.eof do
begin
Writeln(qry.Fields[0].AsString, ' ' , qry.Fields[1].AsString, ' ' , qry.Fields[2].AsString, ' ' , qry.Fields[3].AsString, ' ' , qry.Fields[4].AsString, ' ' , qry.Fields[5].AsString, ' ' , qry.Fields[6].AsString);
qry.Next;
end;
Code: Select all
CONNECTED TO ORACLE
select column1, column2, column3, column4, column5, column6, column7 from table_test
Columns Retrieved : 6
1 2 3 4 5 6 Error : List index (6) out of bounds
Why does the qry not return all 7 columns but rather give me an exception? Can I only retrieve 6 columns?
Many thanks for any help and advice!