NetSuite ODBC 限制

NetSuite ODBC Limitations

我想知道是否有人知道通过 OpenQuery 使用的 NetSuite 的 ODBC SuiteAnalytics Connect 服务的任何限制列表?我已经 运行 遇到许多问题,我的一些更复杂的查询无缘无故地失败了,我终于开始将其缩小到某种奇怪的限制,这是我没想到的 Oracle ODBC。以下是我目前发现的一些示例:

基本 Oracle 查询:

SQL服务器中作为 CTE 的基本查询:

通过 OpenQuery 在 Oracle NetSuite 中作为 CTE 的基本查询(注意无用的响应基本上是 ("don't work"):

选择 SYSDATE:

选择并截断 SYSDATE(注意错误,即使 according to Oracle, the format parameter is OPTIONAL:

使用两个明显必需的参数选择和截断 SYSDATE(使用来自 Oracle 页面的有效 "format" 掩码)。请注意无用的错误 "TRUNC returned error":

项目全名的基本查询:

尝试使用 Oracle's correct format for LISTAGG 时的相同查询,请再次注意无用的 "Syntax error in SQL statement":

我试图了解这些限制并了解它们是什么,但这就像戳黑匣子!

作为对我之后的任何人的跟进...

我直接联系了 NetSuite,因为我在别处找不到答案,他们告诉我他们只支持 SQL-92 中存在的方法和对象。

这是他们的回复:

According to our Project Manager,users are not connecting to an Oracle Database >directly. SuiteAnalytics Connect uses its own (virtual) schema that can be queried >in a way that is compliant with SQL-92.

Some Oracle-specific functions work, too, but is not guaranteed to work properly. >Users are discouraged from using queries that depend on version of Oracle DB.

因此,虽然这非常令人沮丧,但看起来任何想要使用 NetSuite 的 SQL 实现做任何事情的人都不能使用 SQL-92 或更低版本中不存在的任何东西。因此,CTE 和 ListAgg() 已过时。