如何将 SQL 服务器转换为 Oracle?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/694133/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
How to Convert SQL server to Oracle?
提问by Gold
I have a SQL server database (Tables, Views, SP...). I need to convert this database to Oracle 10g. How can I do it?
我有一个 SQL 服务器数据库(表、视图、SP...)。我需要将此数据库转换为 Oracle 10g。我该怎么做?
回答by Andomar
Transferring the data will be easy; SQL Server integration services can do that, or Oracle's SQL Developer.
传输数据将很容易;SQL Server 集成服务或 Oracle 的 SQL Developer 可以做到这一点。
However, views and stored procedures are different between Oracle and SQL Server. SQL Server uses T-SQL, Oracle uses PL/SQL. These are not very compatible and I don't know a tool can automatically convert between the two. If your database relies on specific T-SQL features, you will need a developer to do the conversion.
但是,Oracle 和 SQL Server 之间的视图和存储过程是不同的。SQL Server 使用 T-SQL,Oracle 使用 PL/SQL。这些不是很兼容,我不知道有什么工具可以在两者之间自动转换。如果您的数据库依赖于特定的 T-SQL 功能,您将需要开发人员进行转换。
回答by thatjeffsmith
Get the jTDS jdbc driver from sourceforge.
从 sourceforge获取jTDS jdbc 驱动程序。
Add it to Oracle SQL Developer.
将其添加到Oracle SQL Developer。
Tools > Migration > Migrate
工具 > 迁移 > 迁移
Create a migration repository in your new Oracle database.
在您的新 Oracle 数据库中创建一个迁移存储库。
Create a new migration project.
创建一个新的迁移项目。
Point it to your SQL Server database.
将其指向您的 SQL Server 数据库。
Convert it - mind the data types.
转换它 - 注意数据类型。
Migrate the data:
迁移数据:
- online row-by-row inserts over JDBC. Fine for SMALL/test boxes.
- offline - use micrsosoft's unload utility to pull the sql server down to flat files. SQL Developer will create SQL*Loader scripts to put them over into Oracle.
- If you have GoldenGate licensed, use that to move the data over and to synch changes from one system to the other in case you need to keep both up and going.
- 通过 JDBC 在线逐行插入。适用于小型/测试盒。
- 离线 - 使用 micrsosoft 的卸载实用程序将 sql 服务器拉到平面文件。SQL Developer 将创建 SQL*Loader 脚本以将它们放入 Oracle。
- 如果您获得了 GoldenGate 许可,请使用它来移动数据并将更改从一个系统同步到另一个系统,以防您需要保持两个系统的正常运行。
Start looking at the migrated T-SQL procs and functions. SQL Developer will leave comments for code blocks it wasn't able to translate...but you will need to TEST and VERIFY every single translation. Customers can see upwards to 80-90% translation rates for their T-SQL, but it could be as low as 50%...it just depends on the nature of your code.
开始查看迁移的 T-SQL 过程和函数。SQL Developer 会为无法翻译的代码块留下注释……但是您需要测试和验证每一个翻译。客户可以看到他们的 T-SQL 的翻译率高达 80-90%,但也可能低至 50%……这取决于您的代码的性质。
The entire process is described here.
I wrote a white paper, with Sybase ASE as the example source platform, here. The process is identical for SQL Server. It has step-by-step guidance with screenshots.
我写了一篇白皮书,以Sybase ASE为示例源码平台,这里。SQL Server 的过程是相同的。它具有带屏幕截图的分步指导。
If you have an Oracle account manager, reach out for help. We have specialists that deal exclusively with migrations such as yours. They have lots of practical advice and can recommend 3rd party partners if you lack the expertise.
如果您有 Oracle 客户经理,请寻求帮助。我们有专门处理像您这样的迁移的专家。他们有很多实用的建议,如果您缺乏专业知识,他们可以推荐 3rd 方合作伙伴。
回答by tuinstoel
sql developer can help. You can download it here , it is free. http://www.oracle.com/technology/software/products/sql/index.html
sql 开发人员可以提供帮助。你可以在这里下载它,它是免费的。http://www.oracle.com/technology/software/products/sql/index.html
回答by Salman
There is step by step documentation including videos on how to migrate SQL Server to Oracle DB. You find it here: Migrating from Microsoft SQL Server to Oracle
有分步文档,包括有关如何将 SQL Server 迁移到 Oracle DB 的视频。您可以在此处找到: 从 Microsoft SQL Server 迁移到 Oracle
Or you can use a tool to do the job for you like Ispirer - Migrate Microsoft SQL Server to Oracle
或者您可以使用Ispirer 之类的工具为您完成这项工作- 将 Microsoft SQL Server 迁移到 Oracle