2010-09-20 39 views
0

是否可以通過將參數傳遞給JDBC URL來強制所有創建的表語句使用特定的database.tablespace?例如,而不是手動指定它如下在Z/OS上爲db2設置JDBC URL中的默認表空間?

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)) 

回答

0

DB2完全沒有您需要的概念。它處理第一個表空間的用戶的訪問權限爲「默認」:

IF table space IBMDEFAULTGROUP (over which the user 
    has USE privilege) exists with sufficient page size 
    THEN choose it 
ELSE IF a table space (over which the user has USE privilege) 
    exists with sufficient page size (see below when 
    multiple table spaces qualify) 
    THEN choose it 
ELSE return an error (SQLSTATE 42727) 

從而達到您所需要的是從所有的刪除訪問權限,但一個表空間,即道路。

-- 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 

當然,這需要你計劃好你的行爲,但這種方法是有效的。

相關問題