面向 SQL Server 开发人员迁移到 Oracle 的资源

Mar*_*icz 9 oracle sql-server

对于想要学习 Oracle 基础知识的 SQL Server 开发人员,您可以推荐哪些资源?

我正在寻找一份全面的白皮书或博客文章,描述这些系统之间的差异并回答诸如如何创建 IDENTITY 列之类的问题?什么数据类型相当于浮点数?.

Gai*_*ius 11

从 DBA 的角度而不是从开发人员的角度讲,这门课程非常全面;其中可能有一些对您有价值的内容,尤其是数据对象数据访问章节。它是从 Oracle → SQL Server 的角度编写的,但无论哪种方式都可以工作,它是关于将您已经知道的概念映射到稍微不同的词汇表。

但是,从这里的经验来看,最大的因素不是了解什么数据类型对应什么,而是考虑您的应用程序的转变,特别是如何优化它。例如,如果您来自 SQL Server,您很可能认为游标很昂贵并避免使用它们。好吧,在 Oracle 中,每一个 SELECT都是“幕后”的游标;使用游标所做的只是为您提供一个句柄。类似地,在 SQL Server 中,您将被用于(除非您一直以乐观模式运行,很少有人这样做)阅读器阻塞写入器和写入器阻塞读取器和编码以避免这种情况;Oracle 的行为非常不同,因为它无论如何都只支持MVCC聚集索引在 SQL Server 中比在 Oracle中使用IOT更频繁(我实际上不知道为什么会这样,这只是我观察到的东西,Oracle 人在那里错过了一个技巧)。

像这样的事情就是为什么从一个移植到另一个的应用程序会遇到麻烦......这不仅仅是改变 SQL 语法那么简单(如果是这样,你可能只使用 MySQL,因为你不会得到您已付费购买的所有这些功能!)


Šte*_*vec 11

我建议使用Oracle 提供的文档,因为它是 Oracle 开发人员的最佳资源。

概念开始- 这将帮助您了解 MSSQL 和 Oracle 之间的架构差异。继续快速介绍2 天开发人员2 天 DBA(您需要基本的 DBA 技能来管理您的“游乐场”)。另请阅读系统表/视图的数据库参考,最后阅读 SQL、PL/SQL 和 PL/SQL 包以及所提供包的类型的语言参考。

每个文档“书”都可以下载为 PDF,但我更喜欢 HTML 版本。

如果您遇到困难,请询问 Tom或这里。