MySQL как связанный сервер на SQL Server 2008 - несоответствие длины данных - PullRequest
2 голосов
/ 29 июля 2010

Я пытаюсь настроить сторонний MySQL в качестве связанного сервера на SQL Server 2008. Когда я пытаюсь получить доступ к данным через простой OpenQuery ниже, я получаю сообщение об ошибке.

SELECT * FROM OpenQuery (SERVERNAME, 'SELECT * FROM table')

Сообщение об ошибке:

Поставщик OLE DB 'MSDASQL' для связанного сервера 'SERVERNAME' возвратил данные, которые не соответствуют ожидаемой длине данных длястолбец '[MSDASQL] .tablename'.(Максимальная) ожидаемая длина данных равна X, а длина возвращаемых данных - Y.

ПРИМЕЧАНИЕ: (где X> Y)

Я пробовал с другой таблицей MySQL, котораяЯ построил себя, и он работает нормально.Поэтому я предполагаю, что проблема может быть связана с источником MySQL.

РЕДАКТИРОВАТЬ: После более глубокого изучения данных MySQL я обнаружил несколько «недопустимых» дат, таких как нулевые даты.Это может быть причиной, однако у меня нет возможности изменить источник данных, поэтому я должен найти способ убедить SQL игнорировать его.

Я вспомнил кое-что из предыдущих версий SQL, где вы могли бы переключиться на «Ленивая проверка схемы», чтобы заставить SQL не проверять это.Однако этот вариант, похоже, утратил силу в 2008 году.

Есть идеи, как я могу заставить эту работу работать?

...