我已經開發了一個MVC Web應用程序,使用實體框架和SQL Server作爲後端。我使用了數據庫優先的方法。使用Entity Framework將數據庫從SQL Server切換到Oracle需要進行哪些更改?
現在我的客戶想切換到Oracle數據庫。我正在對從SQL Server切換到Oracle數據庫進行影響分析。我的客戶認爲它和更改連接字符串一樣簡單。
我的問題是,考慮到表名,表結構,關係和屬性都與SQL Server數據庫相同,我需要在從MS SQL切換到Oracle的項目中進行哪些更改?
是否需要爲Oracle數據庫創建新的edmx
文件,還是隻需要更改連接字符串並使用相同的上下文?
此外,如果將來需要扭轉這種情況,那麼是否有支持兩種數據庫的良好做法或解決方案?
謝謝。
作爲一個從事這項工作的人,我最好的建議是拍攝誰想要使用Oracle並隱藏自己的身體。或者,你將不得不得到ado.net的Oracle實現(我們使用devart),並花費你所有的時間來處理大量的角落案例。例如,我們必須創建一個框架來進行大量的scut工作。 Scut的工作是必須對數據庫進行調整以使其更快,所有這些都是每種類型的RDBMS獨有的...... – Will
Oracle數據庫將如何構建?我們在談論哪個oracle版本?我正在開發針對Oracle數據庫的Code First,並且有一些調整。如果表的數量不是微不足道的,我相信如果從現有的MS SQL數據庫轉移,它將成爲一場噩夢。 – grek40
如果你的客戶端提供了一個完成的數據庫,那麼數據庫首先爲你現有的代碼生成一個兼容的模型,它應該和切換連接字符串一樣微不足道。但請注意他們是否希望您成爲構建「兼容」數據庫的人。 – grek40