2015-01-21 179 views
-1

我有一個應該支持兩種類型的數據庫SQL SERVER和ORACLE的應用程序。所以我們一直在SQL Server上工作,現在我們正在提供這種支持。將sql server腳本語法轉換爲oracle腳本語法

我的想法是創建一個工具來生成使用CMO創建數據庫的腳本,然後將這些腳本轉換爲PL/SQL Oracle腳本並在Oracle上運行它們。

我的問題是:

  1. 這句法轉換成爲可能的代碼?
  2. 我需要一個指導來進行這種語法轉換。
  3. 你有更好的建議來維護兩種類型的數據庫(我的意思是當對其中一個數據庫進行更改時,我們不必將其更改爲另一個數據庫,我們需要一個工具來進行更改)。
+0

工具永遠不會比人類好。 – 2015-01-21 13:23:22

+0

與SQL Server不同,Oracle在查詢語言(「SQL」)和過程語言(「PL/SQL」)之間做出了非常明確的區分。提到PL/SQL **總是**意味着您正在編寫Oracle世界中的一些過程或函數。您是否在談論自動將存儲過程從SQL Server T-SQL轉換爲Oracle PL/SQL?或者你在談論如何將SQL查詢從SQL Server轉換爲Oracle?以自動化方式轉換查詢將是一項非常具有挑戰性的任務,但我認爲轉換存儲過程根本不可行。 – 2015-01-22 07:44:43

回答

0

如果你使用標準的SQL編寫,它應該是大多數可移植的。例如,使用fetch代替頂部,SET @ a = ..而不是選擇@ a = ..使用合併代替連接更新的更新,使用CURRENT_TIMESTAMP代替getdate()等。

+0

謝謝,所要求的是某種應該完成所有更改的表格。或者一個代碼示例來完成這個技巧。 – 2015-01-21 12:44:17