2009-12-22 49 views
1

我需要從Grails訪問幾個不同模式的表。用戶具有對所有表的訪問權限,但是當我嘗試將Domain類映射到表時,我無法找到完成它的方法。有沒有辦法在Grails中配置兩種不同的數據庫模式?

我試圖域這種方式映射:

static mapping = { 
     table 'SCHEMA2.TABLE' 
     //Table columns and mapping 
     ... 
    } 

我也可以改變數據源文件的默認模式,但在這種情況下,我只保留訪問兩種模式之一

hibernate.default_schema = 'schema2' 

我們已經制作了別名來從schema1中獲取schema2中的表,但我認爲應該有一種方法可以做到這一點,而不必用Hibernate定義所有的映射(我真的不喜歡XML文件)

+0

那麼,爲什麼你使用兩種不同的方案?爲什麼不像兩個不同的數據庫那樣處理它 – bastianneu 2009-12-22 10:14:37

+0

這是一個傳統的數據庫。我主張將它們作爲同一個數據庫,就像它們真正的那樣。 – Khelben 2009-12-22 10:39:40

回答

3

我知道這個問題是舊的,但以防萬一:

,你可以在你的域類映射部分做到這一點:

static mapping = { 
    table name: "book_catalog", schema: "dbo", catalog: "CRM" 
} 

grails guide

1

你見過DataSources插件嗎?我相信它符合你的要求 - 允許配置多個數據庫並將域對象映射到不同的數據庫。

我以爲我在論壇上看到一些關於1.2現在不工作的電子郵件 - 絕對通過論壇閱讀了解其他人可能遇到的問題。

相關問題