编写SQL查询可能适用于不同的RDBMS?

我正在编写一个应用程序来访问数据库服务。 应用程序应devise与理想的市场中的任何RDBMS一起工作。 例如, MySQLMS SQL ServerFirebirdSQLiteMS Access或更多。 它不应该绑定到一个特定的RDBMS。

但是,一个stringtypes的SQL可能适用于某些RDBMS,但是对于其他types的则失败。 SQL的一个小的变体应该被做为特定的RDBMS。 从语法语法,数据types,连接语法和DMLData Manipulation Language, CREATE TABLE, CREATE INDEX and etc. )。

在应用程序中为不同的RDBMS提供不同版本的SQL并不容易。

是否有某种现成的解决scheme来生成适合不同RDBMS的SQL查询? 也许一些可以在运行时呈现SQL文本的库/类取决于RDBMS连接。

我认为你需要在你的应用程序中使用ORM,看一下水线库,它是Node.js基于适配器的ORM。

https://github.com/balderdashy/waterline