我有一个SQL Server Integration Services ETL项目从Oracle数据库获取数据。我正在使用连接管理器配置和工作的ODBC源组件。Oracle SSIS简单查询 - “文本不匹配格式字符串”
在ODBC源代码中,选择连接管理器后,我在下拉列表中获取所有表和视图。 问题是这样的:我无法从的一些的意见。我得到这个错误:
即使我写一个简单的SQL命令,我得到了同样的错误。
SELECT * FROM "SchemaName"."ViewName"
但是,如果我转到“列”选项卡,所有列显示正确映射。
我检查了Oracle方面的权限,一切似乎都没问题。我可以在同一个模式中查询其他视图,但其中一些给了我这个错误。你可以看到,我没有指定任何转换,我查询的视图没有日期列。
有没有人明白为什么这个错误出现在特定的视图? 谢谢。
编辑:查询在Oracle中运行良好,所以问题不在视图定义中。
由于服务器和客户端NLS参数之间的不匹配,是否可能将这些日期字段中的一个隐式转换为字符串的格式与预期的格式不同? –
我会进一步研究,但即使我运行如下SQL命令: 'SELECT CODSEC FROM SchemaName.ViewName' 即使CODSEC是整数字段,它也会返回完全相同的错误。 – RodWall
它是一个ORA-01861错误 - 错误可能发生在视图SQL中,而不是ODBC。尝试使用SQL客户端连接到数据库并运行您的select语句以确认您得到相同的错误。如果是这样,那么它在视图定义本身内,并且 - 再次 - 可能是字符串到日期的转换,或者可能是数字转换。 –