1. 程式人生 > >解決使用Oracle資料庫,專案啟動由於表原因無法成功啟動問題

解決使用Oracle資料庫,專案啟動由於表原因無法成功啟動問題

    1.仔細看異常資訊,如果出現一個  翻譯過來是 不僅僅這一張表,那就說明,在連線資料庫,定位到表的時候有多張表,不知道連哪一張。

      原因: 有多個使用者,這兩個使用者下有相同的表。 就算是在不同的表空間也不行。  本人猜測在不同的例項下應該是可以存在同樣的兩張表。

      解決辦法;刪掉多餘的使用者及其下的表,或者刪除此使用者下相同的表就行。

    2.在使用hibernate進行自動建表的時候,需要有許可權,一般設定個dba許可權比較好。

    

    3.spring boot 整合 hibernate 進行開發的時候,在配置檔案中設定jpa 的其中三種值 :   create    update   drop    

        create : 表示啟動專案後,載入hibernate時候,會先刪除原先庫中的表,再進行建立

        update :hibernate在第一次載入的時候建立表,後面再載入的話,表示進行比較,可以修改建立新表,但不刪除。

        drop: 每次停止專案,刪除所有hibernate已建表。

 

        Oracle在刪除和建立使用者的時候需要再dba下進行:

        Linux下;    su  - oracle 

             sqlplus   /   as   sysdba;  以dba登入

             建立使用者前,先建表空間:    create  tablespace  表空間名  datafile  'dbf檔案路徑(此路徑的目錄必須已存在)'  size    100M;

             建立使用者    create  user  使用者名稱  identityfied by  密碼  default  tablespace  表空間名;

                                          授權:   grant  dba  to   使用者名稱;給使用者授dba角色許可權

               grant  connect ,resource  to  使用者名稱  ;普通許可權  這個其實是賦予了一個角色,通過角色間接授權

           刪除使用者:drop user  使用者名稱  cascade;  此命令刪除使用者及其下的所有表。