Oracle 12c new features

Oracle is planning to release its latest version Oracle 12c which would be
a cloud based database management system. Please be aware that Oracle 12c has not been officially announced yet and so no decisions should be made on below features. I have consolidated it from various sources.

1. Pluggable Database
DBAs will be able create multiple pluggable databases (PDB) that sits
within a single database container. Each PDB will have its own metadata and
private data files. It will be easy to apply patches for all databases by
patching only one container database. Backup and recovery efforts are less
since DBAs can maintain each PDB separately. PDBs are ideal for creating
development and test environments.

2. VARCHAR2 length up to 32767
This one will be one of the best feature for developers who always struggle
to manage large chunk of data. Current version of databases allows only
up to 4000 bytes in a single varchar2 cell. So developers has to either use
CLOB or XML data types which are comparatively slower that varchar2
processing.

3. Default value can reference sequences
This is also for developers who struggle to maintain unique values in
Primary Key columns. While creating a table default column can be
referenced by sequence.nextval.

4. Top-N feature
As like MySQL(limit clause), Oracle 12c will allow Top-N feature in
queries. Analytical function improvements.

5. PL/SQL Unit Security
A role can be granted to a code unit, say Procedure,Function,Package etc.

6. With Clause improvement
Functions can be created with SQL having WITH clause.

7. Duplicate Indexes  
Create duplicate indexes on the same set of columns. Like in large
applications you might want two different types of index on the same data.

8. Boolean in SQL
As of Oracle 11g Boolean is not a supported data type in SQL and 12c you can
enjoy this feature.

9. Implicit Result Sets
Ref Cursors can be directly open in side program units. No need to use
Oracle collection to handle ref cursor seperately.

10. Transaction Guard
Transaction can be marked as “unknown” where transactions outcome is
not known. This will safe guard duplicate submission of successful transactions.

Few more features as bullet points. More details yet to come

  •  Asynchronous Global Index maintenance for DROP and TRUNCATE.
  •  Cascade for TRUNCATE and EXCHANGE partition.
  •  Multiple partition operations in a single DDL.
  •  Online move of a partition (without DBMS_REDEFINTIION).
  •  Interval + Reference Partitioning.
  •  Adaptive Execution/statistics Plans.
  •  STATISTICS COLLECTOR steps in the SQL Trace.
  •  Global temporary tables can have “session private statistics”.
  •  Temporary Undo for temporary tables.

Did you find any thing else ? Please feel free to add your comments.