为Z/OS上的db2在JDBCURL中设置默认表空间?

为Z/OS上的db2在JDBCURL中设置默认表空间?,jdbc,db2,mainframe,zos,Jdbc,Db2,Mainframe,Zos,是否可以通过向JDBCURL传递参数来强制所有CREATETABLE语句使用特定的database.tablespace?例如,而不是手动指定它,如下所示 CREATE TABLE Message (id INTEGER NOT NULL, created TIMESTAMP, message VARCHAR(255),PRIMARY KEY (id)) in DATABASE.TABLESPACE 我想在连接URL中指定“database.tablespace”并执行 CREATE

是否可以通过向JDBCURL传递参数来强制所有CREATETABLE语句使用特定的database.tablespace?例如,而不是手动指定它,如下所示

CREATE TABLE Message (id INTEGER NOT NULL, created TIMESTAMP, message VARCHAR(255),PRIMARY KEY (id))     in DATABASE.TABLESPACE
我想在连接URL中指定“database.tablespace”并执行

CREATE TABLE Message (id INTEGER NOT NULL, created TIMESTAMP, message VARCHAR(255), PRIMARY KEY (id))

DB2完全缺乏您需要的概念。它将用户有权访问的第一个表空间处理为“默认”:

因此,实现所需的方法是从除一个表空间之外的所有表空间中删除访问权限,即

-- repeat for all tablespaces
revoke use of tablespace myspace1 from public
revoke use of tablespace myspace1 from user/group xxx
-- and make sure the ones you really need have access rights
grant use of tablespace myspace1 to user creatoruser
当然,这需要你很好地计划你的行动,但这种方法是有效的

-- repeat for all tablespaces
revoke use of tablespace myspace1 from public
revoke use of tablespace myspace1 from user/group xxx
-- and make sure the ones you really need have access rights
grant use of tablespace myspace1 to user creatoruser