2016-01-13 22 views
1

如果我從console.sh打開一個到OrientDB數據庫的連接,然後使用單獨的Java代碼添加一個類,則類不顯示控制檯會話(「列表類」),除非我重新連接。OrientDB來自java會話的模式更改不會出現在console.sh會話中,除非我重新連接

爲什麼模式更改不通用?這是否意味着不同的客戶端會看到相同的數據庫?

只是爲了澄清 - 我沒有要求解決方法,我問「爲什麼」這種行爲存在,我尋找的答案將解釋「爲什麼」。

回答

5

從您的控制檯在數據庫中記錄時,請嘗試以下命令:

reload schema 

應該重新加載模式,如果你再列出類,你應該看到導入的新類。

+0

正如@cgull問:「這是否意味着不同的客戶端將看到不同的數據庫?」顯然,你的答案是「是的,直到架構重新加載。」如果使用已更改的模式對數據進行更改(通過Java程序)會怎樣?如果通過console.sh會話對數據進行更改會怎樣? – peak

+0

這對我來說是個不錯的選擇。我不能讓我的代碼在每次讀取數據庫之前執行重新加載模式。我有數據進入新的領域,我不能預測,因此我選擇OrientDB的靈活模式。我對這個發現非常失望。是否有這種行爲的原因? – cgull