问题标签 [teiid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
82 浏览

teiid - QueryParser 不解析带有除 ansi-quoted 之外的带引号标识符的 sql 语句

我正在使用 org.teiid.query.parser.QueryParser 将 SQL 字符串解析为 Query 对象。它适用于 ansi 引用的标识符(双引号)。但是,在解析用方括号、单引号和反引号引用的标识符时会引发错误。

出现以下错误:java.lang.Exception: org.teiid.api.exception.query.QueryParserException: TEIID31100 解析错误:在第 1 行第 8 列遇到“select [*][[*]dbo.empid]”。是期待:“字符”| “日期” | “时间” | “时间戳” | “投” | “转换” | “全部” | “任何” | "数组" | “array_agg” ...

这就是我使用它的方式: Query query = (Query)QueryParser.getQueryParser().parseCommand(sqlString, new ParseInfo());

上述语句中的 ParseInfo 参数将 ANSI_QUOTED_DEFAULT 属性设置为 true,因此它能够解析带有双引号标识符的 sql 字符串。例如:从“dbo”中选择“dbo.empid”。“Emp”“Ex”

我的应用程序需要使用其他类型的引用来解析 SQL 字符串,如下所示。

  • 方括号:选择 [dbo.empid] From [dbo].[Emp] [Ex]

  • 单引号:从 'dbo'.'Emp' 'Ex' 中选择 'dbo.empid'

  • 反引号:dbo.empid从中选择dboEmp Ex

Query解析器没有解析上述三个sql语句。

代码中是否需要任何 teiid 属性设置或任何其他 teiid 配置以允许任何类型的引用?

0 投票
2 回答
24 浏览

java - 如何使用多个数据源进行故障转移 rdbms

我们有两个数据源 1. Excel 文件 2. Postgress db 表 需要将故障转移为“如果 db 出现故障,则从 excel 获取数据,但同时获取数据以加快速度”。是否可以在 teiid 中通过 vdb 进行故障转移?

0 投票
1 回答
214 浏览

sql-server-2012 - SQL Server 的两个 xa 数据源之间未发生克隆

我正在尝试使用 Teiid(jtds 1.3.1 驱动程序)从 SQL Server 2012 到 SQL Server 2012(2 XA 数据源)克隆数据(将数据从一个数据库复制到另一个使用),但不知何故它给了我这个错误。

我的数据源配置如下:

我的驱动配置如下:

请帮助我解决问题。提前致谢!!。

0 投票
1 回答
52 浏览

java - teiid importer.schemaPattern 属性不起作用

我正在尝试在 xml 下使用 mysql 数据源创建 vdb:

创建了 vdb,但是 mysql 数据源中的所有模式都加载到了 vdb 中,我怎么能只在一个模型中加载一个模式

0 投票
1 回答
43 浏览

jboss - Native Function Return from Geography Data Type

I am creating a DDL file to be deployed as VDB using TEIID. The source model is MS SQl. In the source database there is geography data type column. I am trying to read the lat and long from geography data type.

To retrieve the lat/long in sql server:

When creating a view in ddl file using select statement and trying to retrieve the lat/long by passing to teiid, an exception is thrown. Teiid seems to think .Lat and .Long are columns whereas they are sql server function tied to the geography data column. How can i execute this so it treats the above arguments as ms-sql

0 投票
1 回答
62 浏览

xml - 从字符串转换为 xml 的异常

我尝试使用 teiid 服务器将字符串转换为 xml,但是当我运行查询时,此错误总是出现“java.io.OptionalDataException”..我不明白出了什么问题。谢谢

我正在尝试转换这个简单的字符串

使用 CAST(expression AS xml) 或 CONVERT(expression, xml) 进入 xml,mysql 查询是 SELECT ViewModel.table.column, CAST('1' AS xml) FROM ViewModel.table

0 投票
1 回答
73 浏览

wildfly - 委托翻译链接

我试图通过链接 VDB.xml 来委派翻译器,但在拨打电话后出现错误。委托翻译器假设拦截对底层实际委托翻译器的调用并执行计算。计算由 TEIID_SESSION 中设置的属性驱动,该属性作为有效负载与语句对象一起传递

我的 vdb.xml:

当我在 teiid_session 中设置属性并在 SQL 客户端中运行查询时,我收到以下错误:

0 投票
1 回答
22 浏览

teiid - 关于jboss的事务虚拟数据库,怎么配置,我想用这个事务

我想在虚拟数据库程序中使用事务,但是找不到相关语句,我认为虚拟数据库手册中关于事务的语句较少,我无法从手册中获得有用的信息。

0 投票
2 回答
237 浏览

teiid - TEIID Springboot 集成

我读过Teiid,我很喜欢它,但是因为它有很多变化,所以我首先遇到了一些问题来处理它,但我现在理解的是以下几点:

1- teiid wildfly 和 thorntail 将会过时,所以,我不会使用它们。2- teiid spring boot 和 openshift 是现在最活跃的项目,所以,我选择了其中之一,即 sprintboot。

我在 springboot 中使用 teiid 的想法是:

1-将我的不同模式集成到微服务架构模式中,以解决所有服务的数据完整性问题。2-为我的内部数据库系统创建一个独立的数据虚拟化(数据仓库)以用于报告。

对于报告系统,我创建了一个 ddl vdb 文件,我能够在启用 jdbc 的情况下部署 springboot 应用程序,并使用现有的 Simple-java-client 连接到它,但我尝试使用 apache superset 来获取我的报告一个 BI 应用程序,我使用 postgres 启用了 ODBC,但我总是遇到以下错误

连接失败 (psycopg2.OperationalError) TEIID30528 javax.transaction.SystemException:系统仅设置为 Spring 托管事务。如果需要 Teiid 来管理事务,则需要配置像 narayana-spring-boot-starter 这样的第三方事务管理器。详细信息:org.teiid.jdbc.TeiidSQLException:TEIID30528 javax.transaction.SystemException:系统仅针对 Spring 托管事务设置。如果需要 Teiid 来管理事务,则需要配置像 narayana-spring-boot-starter 这样的第三方事务管理器。

虽然我尝试与 narayana 集成,但我无法配置它,抱歉这么长时间的讨论,但我需要知道:

1-上述方法是好的,还是我应该尝试其他方法。

2-上述错误是否有任何修复或有任何其他建议的 BI 工具可以与 Teiid 一起使用?

提前致谢

0 投票
1 回答
150 浏览

teiid - Teiid QueryParser 不解析 SELECT TOP number|percent column_name(s)

当我尝试使用 TOP 子句解析 Select 查询时,例如 SELECT TOP 10 * FROM Customers

收到以下错误消息: java.lang.Exception: org.teiid.api.exception.query.QueryParserException: TEIID31100 解析错误:在第 1 行第 12 列遇到“SELECT TOP [ * ]10[ * ] * FROM”。是期待:| “和” | “作为” | “之间” | “除了” | “取” | “从” | “在” | “相交” |

它适用于 LIMIT 子句,但不适用于 TOP 子句。SQL Server 等数据库支持 TOP 子句来检索有限数量的行。Teiid Query Parser 不支持 TOP 子句吗?