Some databases have a maximum byte limit for the row length.
Because each property that you create becomes a table column, you
can exceed the row size limitation and receive an error when you add
more property definitions to a class.
To avoid exceeding the row size limit, see Minimize database row sizes.
Each
column data type consumes a certain number of bytes from the row length.
Run the following SQL queries and add the byte values returned from
each query to get the total bytes that are used for the row. The formulas
are approximate, but provide a good indication if the row length is
nearing the limit. See your database documentation for the create
table statement for more information.
The following sample queries
are for the DOCVERSION table that defines the Document class properties.
Custom objects are in the GENERIC table.
For schemaname,
substitute the name of the Content Platform Engine schema
that is used for the object store.
- IBM®
DB2® for Linux, UNIX and Windows
- select SUM(3) from syscat.columns where TABSCHEMA = 'schemaname'
and tabname = 'DOCVERSION' and typename = 'SMALLINT'
- select SUM(5) from syscat.columns where TABSCHEMA = 'schemaname'
and tabname = 'DOCVERSION' and typename = 'INTEGER'
- select SUM(9) from syscat.columns where TABSCHEMA = 'schemaname'
and tabname = 'DOCVERSION' and (typename = 'BIGINT' OR typename =
'DOUBLE')
- select SUM(length + 5) from syscat.columns where TABSCHEMA
= 'schemaname' and tabname = 'DOCVERSION' and typename = 'VARCHAR'
- select SUM(2*length + 5) from syscat.columns where TABSCHEMA
= 'schemaname' and tabname = 'DOCVERSION' and typename = 'VARGRAPHIC'
- select SUM(11) from syscat.columns where TABSCHEMA = 'schemaname'
and tabname = 'DOCVERSION' and typename = 'TIMESTAMP'
- select SUM(281) from syscat.columns where TABSCHEMA =
'schemaname' and tabname = 'DOCVERSION' and typename = 'BLOB'
- select SUM(257) from syscat.columns where TABSCHEMA =
'schemaname' and tabname = 'DOCVERSION' and typename = 'DBCLOB'
- IBM
DB2 for z/OS®
- SELECT SUM(3) FROM "SYSIBM"."SYSCOLUMNS" T where TBCREATOR
= 'USER1' AND TBNAME = 'DOCVERSION' AND TYPENAME = 'SMALLINT';
- SELECT SUM(5) FROM "SYSIBM"."SYSCOLUMNS" T where TBCREATOR
= 'USER1' AND TBNAME = 'DOCVERSION' AND TYPENAME = 'INTEGER';
- SELECT SUM(9) FROM "SYSIBM"."SYSCOLUMNS" T where TBCREATOR
= 'USER1' AND TBNAME = 'DOCVERSION' AND (TYPENAME = 'BIGINT' OR TYPENAME
= 'DOUBLE');
- SELECT SUM(11) FROM "SYSIBM"."SYSCOLUMNS" T where TBCREATOR
= 'USER1' AND TBNAME = 'DOCVERSION' AND TYPENAME = 'TIMESTAMP';
- SELECT SUM(length + 5) FROM "SYSIBM"."SYSCOLUMNS" T where
TBCREATOR = 'USER1' AND TBNAME = 'DOCVERSION' AND TYPENAME = 'VARCHAR';
- SELECT SUM(2 * length + 5) FROM "SYSIBM"."SYSCOLUMNS"
T where TBCREATOR = 'USER1' AND TBNAME = 'DOCVERSION' AND TYPENAME
= 'VARGRAPHIC';
- SELECT SUM(7) FROM "SYSIBM"."SYSCOLUMNS" T where TBCREATOR
= 'USER1' AND TBNAME = 'DOCVERSION' AND (TYPENAME = 'BLOB' OR TYPENAME
= 'DBCLOB');