【问题标题】:Migration tool from TSQL to PL/SQL? [closed]从 TSQL 到 PL/SQL 的迁移工具? [关闭]
【发布时间】:2011-03-09 14:52:20
【问题描述】:

我们需要将数据库从 MSSQL 迁移到 Oracle,我们有超过 100 个用 PL/SQL TSQL 编写的存储过程。我知道这是一个很长的机会,但是有没有人成功地使用过自动迁移工具来完成这项工作?我在网上看过一些工具,但我无法判断它们处理各种代码的能力。在这件事上的任何个人经验都会有所帮助。

【问题讨论】:

标签: sql sql-server oracle tsql plsql


【解决方案1】:
  1. SwisSQL - SQL Server to Oracle Migration Tool 3.5;
  2. tsql to pl sql;
  3. Convert SQL Server T-SQL to Oracle PL/SQL (syntax and equivalences);

但是,转换完成后可能需要执行一些优化。所以,你应该考虑在转换完成后修改它。

编辑#1

另一个有趣的工具是:

Spectral Core's Full Convert Enterprise

您对其中任何一个都有经验吗?

很遗憾没有。我刚刚使用 SSIS 执行了到 SQL Server 的转换。

编辑#2

似乎有一个更合适的直接来自 Oracle 的工具,我更信任它。

直接来自 Oracle:Migrating from Microsoft SQL Server to Oracle

以及核心功能:

SQL Developer 迁移技术在从 Microsoft SQL Server 迁移时支持以下核心功能:

  • 自动将列数据类型转换为适当的 Oracle 数据类型。
  • 自动解决对象名称冲突,例如与 Oracle 保留字的冲突。
  • 将 T-SQL 存储过程、函数、触发器和视图解析并转换为 Oracle PL/SQL。
  • 提供高级自定义功能,例如更改数据类型映射、删除和重命名对象的能力。
  • 生成有关迁移状态的报告。
  • 为创建目标 Oracle 数据库生成 DDL 脚本。
  • 为数据移动生成脚本
  • 在进度窗口中显示有关迁移的信息、错误和警告消息。

    1. 因此,我建议您仔细查看所有未提及的细节;
    2. 仔细查看工具提供的信息详情;
    3. 在转换后测试您的存储过程。

如果您看一下与 Oracle 相比 SQL Server 没有提供的功能,那么我首先会关注这些方面。要了解这些差异,请点击上面的3. Convert SQL Server T-SQL to Oracle PL/SQL (syntax and equivalences) 链接。

【讨论】:

  • 您对其中任何一个有经验吗?他们离工作有多近?你有没有遇到任何我应该注意的细微错误?
  • 请查看我的编辑以获取答案。然而,如果您对 Oracle PL/SQL 熟悉的话,手动完成 100 个存储过程并不是很多工作。
  • 翻译不是我担心的,而是让我害怕的考验。但我想没有办法避免这种情况。我们可能会用 Java 编写一个单元测试套件,它能够同时针对 Oracle 和 SQL Server 运行并充当回归工具。感谢您的深入回答和研究。
  • 很高兴为您提供我搜索的信息。我确实希望这对您的迁移有所帮助。请在之后告诉我你所经历的练习,以便我更好地学习自己。感谢您接受我的回答,我很感激,真诚的。祝你有美好的一天! =)
【解决方案2】:

我建议手动完成。首先,就我个人而言,100 分听起来一点也不差。我敢打赌,您的开发遵循模式 - 使用 getutcdate() 而不是 current_timestamp 等。这意味着,您和您的团队可能会从中学习一些非常重复的问题。对我来说,这将为您教授 PL/SQL 细微差别/扩展带来额外的好处,您可能需要学习这些知识才能维护/扩展新系统。

祝你好运!

【讨论】:

  • 手工操作是我们的默认选项,但我想我会看看是否有更简单的方法。谢谢。
【解决方案3】:

过去我试图做相反的事情,但恐怕没有 100% 可靠的方法。某些特性对于每个 RDBMS 都是唯一的,并且无法通过工具复制(例如 SQL Server 中的 IDENTITY 字段与 Oracle 中的序列)。考虑到最后,我必须检查每个存储过程以确保它完成了它应该做的事情,我意识到最好计划一个手动移植并在做的时候学习一些 PL/SQL。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-15
    • 1970-01-01
    • 1970-01-01
    • 2010-11-02
    • 2014-07-12
    • 2010-09-15
    • 1970-01-01
    相关资源
    最近更新 更多