My Oracle Support Banner

Internal Database Limits on Number of Objects, Constraints, and Users (Doc ID 2660231.1)

Last updated on SEPTEMBER 20, 2024

Applies to:

Oracle Database - Standard Edition - Version 12.1.0.2 and later
Oracle Database - Enterprise Edition - Version 12.1.0.2 and later
Oracle Database Cloud Exadata Service - Version N/A and later
Oracle Cloud Infrastructure - Exadata Cloud Service - Version N/A and later
Gen 1 Exadata Cloud at Customer (Oracle Exadata Database Cloud Machine) - Version N/A and later
Information in this document applies to any platform.

Goal

The Oracle RDBMS has some internally imposed limits due to internal datatypes used. These limits affect the number of objects that can be created, the number of lightweight jobs that can be created, the number of DDL operations that can be executed, the number of table constraints that can be created, and the number of users that can be created. This note is designed to document these limits and any potential workarounds / solutions available.

The limits discussed in this note are also documented in Appendix A of the Oracle Database Reference. The section entitled 'Logical Database Limits' has a table with the following entries, among others:

 Item  Type of Limit  Limit Value
 Constraints  Maximum per column

 Unlimited

 Oracle does not define a limit on the number of constraints per column. However, constraints are subject to the limit on the maximum number of constraints in the database. See the entry for "Constraints - Maximum per database" in this table.

 Constraints  Maximum per database  4,294,967,293
 Database users  Maximum per database  4,294,967,293
 Dictionary-managed database objects  Maximum per database  4,254,950,911 - overhead
 Indexes  Maximum per column  Unlimited

 Oracle does not define a limit on the number of indexes per table. However, indexes are subject to the limit on the maximum number of dictionary-managed database objects allowed per database. See the entry for "Dictionary-managed database objects" in this table.

 Tables  Maximum per database

 Unlimited

 Oracle does not define a limit on the number of tables per database. However, tables are subject to the limit on the maximum number of dictionary-managed database objects allowed per database. See the entry for "Dictionary-managed database objects" in this table.

As mentioned in the documentation, the number of constraints, indexes, and tables that can be created in a database are not actually unlimited. This note provides more detail on what the actual limitations are.

Solution

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Goal
Solution
 Constraints
 Database Users
 Tables (and Other Dictionary-Managed Objects)
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.