我想在DB2中创建表空间,我的平台是AIX。
我希望将该表空间放在我操作系统的目录中。我还创建了一个缓冲池,它具有相同的表空间页面大小。但是得到SQLCODE = -104。
CREATE BUFFERPOOL BPOOL SIZE 2000 PAGESIZE 16K;
CREATE TABLESPACE TS01
MANAGED BY DATABASE
USING ( '/dbdata/UMPSYS01' )
PAGESIZE 16K
BUFFERPOOL BPOOL
我尝试使用DEVICE
和FILE
令牌来提供尺寸。但无法运行它。
我得到以下错误:
18:13:38 [CREATE - 0 row(s), 0.000 secs] [Error Code: -104, SQL State: 42601] DB2 SQL Error: SQLCODE=-104, SQLSTATE=42601, SQLERRMC=USING ( '/dbdata/UMPSYS01' );ESPACE TS01
;<space>, DRIVER=3.61.75
答案 0 :(得分:1)
非常重要(不幸的是)您可以使用正确的顺序获得正确的语法。 CREATE TABLESPACE
语句的语法图可用here。
您已将PAGESIZE
子句放在 MANAGED BY ...
之后,这是不正确的。它应该在之前:
CREATE TABLESPACE TS01
PAGESIZE 16K
MANAGED BY DATABASE
USING (FILE '/dbdata/UMPSYS01.dms' 100M)
BUFFERPOOL BPOOL