What is the equivalent of varchar(max) in Oracle?

Varchars are limited to 4000 characters in Oracle. Other than that, you have to use a LONG or a CLOB. Prefer CLOBs. LONGs are the older equivalent.

From this Oracle documentation:

LOBs vs. LONG and LONG RAW

LOBs are different from the older LONG
and LONG RAW datatypes in many ways.

  • The maximum size of a LOB is 4 Gigabytes versus 2 Gigabytes for LONG
    and LONG RAW.
  • You can use random as well as sequential access methods on LOBs; you
    can only use sequential access methods
    on LONG and LONG RAW.
  • LOBs (except NCLOBs) can be attributes of an object type that you
    define.
  • Tables can have multiple LOB columns, but can have only one LONG or
    LONG RAW column.

Migration of existing LONG and LONG
Raw attributes to LOBs is recommended
by Oracle. Oracle plans to end support
of LONG and LONG RAW in future
releases. See Oracle8 Migration for
more information on migration.

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)