SQL0670N 表的行长度超过 "4005" 字节的限制。(表空间 "USERSPACE1"。)

 今天创建表的时候,提示如标题所示的错误,原因如下:

      数据库管理器中表的行长度不能超过:
         *  在具有 4K 页大小的表空间中,是 4005 字节
         *  在具有 8K 页大小的表空间中,是 8101 字节。
         *  在具有 16K 页大小的表空间中,是 16293 字节。
         *  在具有 32K 页大小的表空间中,是 32677 字节。

 而userspace1的默认表空间大小为4kb的。数据页在创建时就确定不能修改。

 只能创建一个更大的表空间来存放表,如下 :

     1:create tablespace tablespacename  pagesize 32k managed by database using (FILE 'D:/tablespacename/cont1' 2000)

    在使用上面的命令时,出现了表空间tablespacename的pagesize和与该空间相关联的缓冲池"IBMDEFAULTBP"

 的pagesize不匹配。

     这是由于在创建表空间时,默认使用的ibmdefaultbp的bufferpool的pagesize是4k,建一个非4k的表空间时就要建一个相对应大小的pagesize的缓冲池,然后使用这个缓冲池。

     create bufferpool name size 1000 pagesize 16k

    然后再使用

    create tablespace tablespacename  pagesize 32k managed by database using (FILE 'D:/tablespacename' 10000)  bufferpool bp32k

你可能感兴趣的:(db2)