我正在尝试在SQL Server 2008上将第三方MySQL设置为链接服务器。 当我尝试通过下面的简单OpenQuery访问数据时,我收到错误。
SELECT * FROM OpenQuery(SERVERNAME,'SELECT * FROM table')
错误消息:
链接服务器“SERVERNAME”的OLE DB提供程序“MSDASQL”返回的数据与列“[MSDASQL] .tablename”的预期数据长度不匹配。 (最大)预期数据长度为X,而返回的数据长度为Y.
注意:(其中X> Y)
我尝试过自己构建的另一个MySQL表,但它运行正常。因此,我认为问题可能出在MySQL源代码上。
编辑:在深入研究MySQL数据之后,我发现了几个“无效”日期,例如零日期。这可能是一个原因,但是我无法更改数据源,所以我必须找到一种方法来说服SQL忽略它。我记得以前版本的SQL中的某些内容,您可以切换到“Lazy Schema Validation”以强制SQL不检查它。但是这个选项似乎在2008年消失了。
我是如何做到这一点的?