Error while exporting data to flat file from database using sqlplus in UNIX

exportoraclesqlplusunix

Trying to export data from a table to .dat file in a unix script using the SPOOL command.

However on execution only ~17k data is exported to file out of 91K data with an error in end of the file : ORA-08103 Object do not exist, though the objects exists in the database.

When I tried to export the data in csv, it exported only ~11k data with same error in the file.
Exporting almost ~35 columns from the table.

spool ${DataDirectory}/output.dat; 

select * from < Table_name >; 

What could be the reason for not exporting complete data set and throwing a error even if object exist?

Attached is the screenshot of the script.

enter image description here

enter image description here

Best Answer

ORA-08103 object no longer exists

means you were querying a segment that has since been (re)moved. The most common examples of this are:

  • Someone truncated the table
  • Someone did 'alter table move'
  • Someone did 'exchange partition'

all of which move a segments contents to a new place on disk, hence the data you were scanning "no longer exists"