keb ,
It is because sql server (and sybase probably) lock table when you read data.MyEclipse read ‘row increment size’ (fetch size) rows in one moment and you can read more data with actions in result view (you have 2 actions ‘retrieve more rows’ and ‘retrieve all rows’).Result set is opened until you read all rows (or read ‘rows per result set limit’).
You have more solutions for your problems :
– call ‘retrieve all rows’ after executing query and MyEclipse will read all rows (untili limit if you have it) and close statement and you can continue normal works
– increase ‘row increment size’ (max is 1000) in Windows – Preferences – MyEclipse – Database explorer (or from action in Result View – after this you will not lock table <= 1000 rows, but for bigger tables you will must call ‘retrieve all rows’.This solution is not too good for slow remote database and it is better that you load data
in less chunks.
– set ‘rows per result set’ to <= increment size and you needn’t call ‘retrieve all rows’, but you will be able see only ‘increment size rows’
We can’t set that MyEclipse retrieve all rows, because tables with a lot rows (>10000 or 10000) can throw ‘out of memory’ exception, special when you can execute more queries in sql editor.It can be very slow for slow remote database, for example.
Other final solution is constraint total number of rows, but it isn’t good, too.
Please, tell us if you have better idea and we will try implement , but we have to care that it work in different environment (local, remote, different databases etc)
Thanks
Peco