是否有一種工具(最好是免費的)將Oracle的PL/SQL存儲過程語言翻譯成PostgreSQL的PL/pgSQL存儲過程語言?將Oracle PL/SQL翻譯成Postgresql PL/pgSQL的工具
5
A
回答
3
在http://ora2pg.darold.net/有一個工具可用於將Oracle模式轉換爲Postgres模式,但我不確定它是否也會轉換存儲過程。 但它可能提供了一個開始的地方。
2
還有EnterpriseDB,它具有相當的Oracle兼容性來幫助從Oracle遷移。與Oracle兼容的版本不是免費的,但值得一看,如果你不只是一個程序翻譯。
2
一直在從事甲骨文到Postgres的轉換工作很長一段時間。唯一的辦法就是手動。這兩種語言之間有細微的差別,可能會讓你感覺不舒服。我們嘗試使用自動化工具,但這隻會讓問題變得更糟,我們最終會摧毀輸出。
2
使用ora2pg來轉換您的模式。
對於存儲過程:
- 手動轉換所有DECODE()來CASE語句和所有舊式的Oracle WHERE(+)外連接,以明確LEFT OUTER JOIN語句。我還沒有找到一個工具來做到這一點。
- 在PL/PGSQL中翻譯PL/SQL函數(見下文)。
如果有人啓動了一個sourceforge項目來做到這一點,那將會非常好。
提示提示...
這裏就是我的意思是上面(2):
CREATE OR REPLACE FUNCTION trunc(
parmDate DATE ,
parmFormat VARCHAR)
RETURNS date
AS $$
DECLARE
varPlSqlFormat VARCHAR;
varPgSqlFormat VARCHAR;
BEGIN
varPgSqlFormat := lower(parmFormat);
IF varPgSqlFormat IN (
'syyyy' ,
'yyyy' ,
'year' ,
'syear' ,
'yyy' ,
'yy' ,
'y' ) THEN
varPgSqlFormat := 'year';
ELSEIF varPgSqlFormat IN (
'month' ,
'mon' ,
'mm' ,
'rm' ) THEN
varPgSqlFormat := 'month';
ELSEIF varPgSqlFormat IN (
'ddd' ,
'dd' ,
'j' ) THEN
varPgSqlFormat := 'day';
END IF;
RETURN DATE_TRUNC(varPgSqlFormat,parmDate);
END;
$$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION trunc(
parmDate DATE)
RETURNS date
AS $$
DECLARE
BEGIN
RETURN DATE_TRUNC('day',parmDate);
END;
$$ LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION last_day(in_date date) RETURNS date
AS $$
DECLARE
BEGIN
RETURN CAST(DATE_TRUNC('month', in_date) + '1 month'::INTERVAL AS DATE) - 1;
END;
$$ LANGUAGE plpgsql;
相關問題
- 1. 翻譯工具
- 2. 谷歌翻譯小工具 - 翻譯完成回調
- 3. 是否有翻譯工具將EBNF翻譯爲boost :: spirit?
- 4. 是否有將C代碼翻譯成Smalltalk的工具?
- 5. 小工具翻譯將不起作用
- 6. c - > c#翻譯,工具
- 7. PHP:MySQL的翻譯PostgreSQL的
- 8. 將iOS Enums翻譯成Android
- 9. Postgres to Oracle翻譯
- 10. 將LESS mixins翻譯成Sass
- 11. 將AppleScript翻譯成Objective-C
- 12. 如何將PostgreSQL hstore列翻譯成一行?
- 13. 將MySQL查詢翻譯成HSQLDB和Oracle查詢
- 14. 將mongoid翻譯成德語
- 15. 將SQL翻譯成LINQ
- 16. 將Python翻譯成Java
- 17. 將原型翻譯成jQuery
- 18. 將公式翻譯成VBA
- 19. 將XPath翻譯成LINQ
- 20. 將黃瓜翻譯成rspec
- 21. 將php sha1翻譯成C#
- 22. AngularJS翻譯&UI工具提示的html
- 23. Tumblr上的Google翻譯工具博客
- 24. 翻譯工具的JavaScript回調
- 25. Zend框架翻譯工具的使用
- 26. 的Oracle SQL樞翻譯
- 27. 如何使用谷歌翻譯工具自動翻譯部分?
- 28. 將Oracle右外連接翻譯成SQL Server
- 29. 自動類翻譯工具WCF?
- 30. 翻譯d3工具提示與i18next
從列入ora2pg發行的TODO文件... 下需要你的貢獻: \t - SQL查詢轉換器。 \t - PL/SQL代碼轉換器。 – dacracot 2008-10-01 16:29:33
進一步看,它似乎會出口包裹,但似乎沒有信心,他們將工作100%。值得一試。 – dacracot 2008-10-01 16:34:01