SQL数据库之间的差异列表

Nul*_*ion 31 sql standards cross-platform ansi-sql

大多数SQL数据库都遵循ANSI SQL标准,但是

  1. 标准是模糊的,留下一些区域可以解释(例如:NULLs应该如何处理不同的操作是模糊的)

  2. 有些供应商完全违反标准或仅缺乏标准定义的功能(例如:MySQL有标准与其实现之间的差异列表)

  3. 某些数据库的行为会有所不同,具体取决于它们的配置方式,但可以更改配置以使它们的行为方式相同(例如:Oracle默认情况下执行区分大小写的字符串比较,而SQL Server会使它们不区分大小写)

  4. 有些功能不是标准的一部分,但是不管怎样都由不同的RDBMS实现,虽然名称不同(例如:Oracle's LISTAGG= MySQL's GROUP_CONCAT)

当您尝试编写应该与多个数据库兼容的内容时,是否有一个包含全面的怪癖列表和陷阱的资源?

Rus*_*lin 5

我不确定这个列表有多全面,但也许这会有所帮助 - http://troels.arvin.dk/db/rdbms/