In Oracle you don't need to have indexes on a table to sort data. You use the order by clause. Of course, sometimes you will need an index in order to speed up performance, but this will depend on the situation and is a matter of database tuning.
If you want to sort the data on the client instead of sorting it on the server (e.g. if the user can choose a different way to sort the data in a grid), I think you need to use a ClientDataSet. The component is connected to your OracleDataSet through an OracleProvider Component. On the ClientDataSet you can create indexes.