我是一名软件开发人员。我已经使用了多年的mysql,现在我即将在一个项目中遇到与oracle的第一次碰撞。mysql和oracle sql方言之间的主要区别是什么?
我刚刚被告知我应该小心SQL在某些情况下表现完全不同。我不知道会发生什么。我主要是在寻找明显的东西和典型的初学者错误。
例如,我被告知oracle没有自动递增。
这是我正在寻找的东西的类型。我很感激任何进一步的知识,有助于避免为已解决的问题创建新的解决方案。
我是一名软件开发人员。我已经使用了多年的mysql,现在我即将在一个项目中遇到与oracle的第一次碰撞。mysql和oracle sql方言之间的主要区别是什么?
我刚刚被告知我应该小心SQL在某些情况下表现完全不同。我不知道会发生什么。我主要是在寻找明显的东西和典型的初学者错误。
例如,我被告知oracle没有自动递增。
这是我正在寻找的东西的类型。我很感激任何进一步的知识,有助于避免为已解决的问题创建新的解决方案。
这里的所有的Oracle和MySQL之间的差异的链接,从拥有两个:-)
要小心,当公司网上有很多过时的信息。忽视任何超过3年的事情。
例如,我被告知oracle没有自动递增。
Oracle有序列;这只是一个不同的符号。在INSERT上自动递增的列值的想法当然是存在的。
Oracle将您添加主键和外键作为约束,与表定义分开。
PostgreSQL是开源数据库中最接近Oracle的东西。它也有序列。
分组是一个主要的区别,因为MySQL对分组有其自己的非标准解释。所以如果你使用了很多聪明的分组,你可能会发现Oracle不会执行你的查询。
http://dev.mysql.com/doc/refman/5.6/en/group-by-hidden-columns.html
如果要在旧的MySQL中测试类似Oracle的分组行为,请启用'only_full_group_by'模式请参阅:http://dev.mysql.com/doc/refman/5.6/en/server-sql-mode.html#sqlmode_only_full_group_by – Johan
+1为主题。 – Johan