views:

83

answers:

2

From these two threads,

LONG is archaic and deprecated. Oracle says,

Do not create tables with LONG columns. Use LOB columns (CLOB, NCLOB) instead. LONG columns are supported only for backward compatibility.

Oracle also recommends that you convert existing LONG columns to LOB columns. LOB columns are subject to far fewer restrictions than LONG columns. Further, LOB functionality is enhanced in every release, whereas LONG functionality has been static for several releases.

But you cannot read a CLOB from a remote database without the workarounds mentioned here.

Which one should I prefer to store some text in my tables? Or is there a better solution than these two?

+1  A: 

If Oracle says a feature is deprecated it may not be available any longer in a future release. So unless your application will run on the current Oracle version for an unlimited amount of time, don't use deprecated functionality.

Rene
+1  A: 

Use CLOBs. One limitation of LONG is that LONGs can't be handled correctly from SQL - PL/SQL.

For a more detailed description of the differences, see http://www.comp.dit.ie/btierney/oracle11gdoc/appdev.111/b28393/adlob_tables.htm#insertedID2

gpeche