Перенос BLOBS на MSSQL -> MySQL Linked Server

Работаю над созданием новой базы данных MySQL для веб-сайта, и я пытаюсь выяснить, как передавать длинные строки.
У меня довольно много таблиц MSSQL с Varchars в диапазоне от 500 до 2000.
Очевидно, что в MySQL они должны храниться в текстовом поле, которое является BLOB.
Если я запрашиваю таблицу в MySQL с полем Text, кажется, что данные возвращаются очень хорошо. Но если я пытаюсь сделать вставку в таблицу с полем Текст, он возвращает сообщение об ошибке [OLE/DB provider returned message: Query-based insertion or updating of BLOB values is not supported.]

Есть ли способ сделать эту работу, или мне придется сделать это с помощью передачи плоских файлов?

2 ответа

Решение

Итак, после долгого осмотра я заметил, что есть две версии ODBC Connector, 3.51.28 и 5.1.8 ( http://dev.mysql.com/downloads/connector/odbc/).

Не уверен, почему они поддерживают две версии, но что угодно. Установил его, сбросил в DNS и смог вставить более 1000 символов в.

Теперь, надеюсь, больше нет никаких ошибок с этим новым.

Кстати, для будущих поколений, когда я настраивал его в DNS, я не отмечал ни одного из полей в параметрах Details. Я не знаю, есть ли какие-либо, которые нужно проверить, но я думаю, я выясню это, когда что-то не работает.

Эта проблема произошла несколько дней назад на моем связанном сервере MySQL. ODBC версия драйвера 5.1.

Соединение MySQL выполняется с использованием системного DSN, а не строки подключения в свойствах связанного сервера. Решение: в параметрах подключения DSN перейдите на вкладку "Курсоры / результаты" и снимите флажок "принудительное использование курсоров только вперед".

Решение, основанное на этом: http://support.microsoft.com/default.aspx?scid=kb;en-us;175245

Другие вопросы по тегам