Oracle complied fully with last Federal Information Processing Standard (FIPS), which was FIPS PUB 127-2. That standard is no longer published. However, for users whose applications depend on information about the sizes of some database constructs that were defined in FIPS 127-2, the details of our compliance are listed in Table C-4.
Table C-4 Sizing for Database Constructs
| Database Constructs | FIPS | Oracle Database | 
|---|---|---|
| 
 Length of an identifier (in bytes)  | 
 18  | 
 30  | 
| 
 Length of   | 
 240  | 
 2,000  | 
| 
 Decimal precision of   | 
 15  | 
 38  | 
| 
 Decimal precision of   | 
 15  | 
 38  | 
| 
 Decimal precision of   | 
 9  | 
 38  | 
| 
 Decimal precision of   | 
 4  | 
 38  | 
| 
 Binary precision of   | 
 20  | 
 126  | 
| 
 Binary precision of   | 
 20  | 
 63  | 
| 
 Binary precision of   | 
 30  | 
 126  | 
| 
 Columns in a table  | 
 100  | 
 1,000  | 
| 
 Values in an   | 
 100  | 
 1,000  | 
| 
 SET clauses in an   | 
 20  | 
 1,000  | 
| 
 Length of a row (Note2, Note 3)  | 
 2,000  | 
 2,000,000  | 
| 
 Columns in a   | 
 6  | 
 32  | 
| 
 Length of a   | 
 120  | 
 (Note 4)  | 
| 
 Length of foreign key column list (Note 2)  | 
 120  | 
 (Note 4)  | 
| 
 Columns in a   | 
 6  | 
 255 (Note 5)  | 
| 
 Length of   | 
 120  | 
 (Note 5)  | 
| 
 Sort specifications in   | 
 6  | 
 255 (Note 5)  | 
| 
 Length of   | 
 120  | 
 (Note 5)  | 
| 
 Columns in a referential integrity constraint  | 
 6  | 
 32  | 
| 
 Tables referenced in a SQL statement  | 
 15  | 
 No limit  | 
| 
 Cursors simultaneously open  | 
 10  | 
 (Note 6)  | 
| 
 Items in a   | 
 100  | 
 1,000  | 
Note 1: The number of SET clauses in an UPDATE statement refers to the number items separated by commas following the SET keyword.
Note 2: The FIPS PUB defines the length of a collection of columns to be the sum of: twice the number of columns, the length of each character column in bytes, decimal precision plus 1 of each exact numeric column, binary precision divided by 4 plus 1 of each approximate numeric column.
Note 3: The Oracle limit for the maximum row length is based on the maximum length of a row containing a LONG value of length 2 gigabytes and 999 VARCHAR2 values, each of length 4000 bytes: 2(254) + 231 + (999(4000)).
Note 4: The Oracle limit for a UNIQUE key is half the size of an Oracle data block (specified by the initialization parameter DB_BLOCK_SIZE) minus some overhead.
Note 5: Oracle places no limit on the number of columns in a GROUP BY clause or the number of sort specifications in an ORDER BY clause. However, the sum of the sizes of all the expressions in either a GROUP BY clause or an ORDER BY clause is limited to the size of an Oracle data block (specified by the initialization parameter DB_BLOCK_SIZE) minus some overhead.
Note 6: The Oracle limit for the number of cursors simultaneously opened is specified by the initialization parameter OPEN_CURSORS. The maximum value of this parameter depends on the memory available on your operating system and exceeds 100 in all cases.