如何增加db2列组织表中的行长

时间:2019-01-28 05:52:49

标签: db2 db2-luw

我想运行以下命令来创建列组织表:

CREATE TABLE T0 (ABC VARCHAR(8000)) IN abc_tablespace organize by column

我收到以下错误:

SQL0670N  The statement failed because the row or column size of the resulting
            table would have exceeded the row or column size limit: "3920". Table space
            name: "ABC_TABLESPACE". Resulting row or column size: "8000".  SQLSTATE=54010

我启用了extended_row_sz。我检查并验证了这一点。不知道这是否仅对行组织表有效。我不想启用DB2_WORKLOAD=ANALYTICS。我刚刚设置了INTRA_PARALLEL YES。有人知道如何在列组织表中创建此列吗?

2 个答案:

答案 0 :(得分:0)

扩展的行大小支持不适用于按列组织的表。

如果在上面的短语中搜索,则在这里表示:CREATE TABLE

答案 1 :(得分:0)

您将需要在具有较大页面大小的表空间中创建表。通常,按列组织的表是在32K页大小的表空间中创建的,尽管这不是强制性的。 在创建数据库https://www.ibm.com/support/knowledgecenter/SSEPGG_11.1.0/com.ibm.db2.luw.admin.dbobj.doc/doc/t0061527.html之前设置DB2_WORKLOAD = ANALYTICS会将默认页面大小设置为32K。由于不想启用此参数,因此需要创建32K(或16K或8K)表空间(和缓冲池)并在其中创建表。