Можно ли сделать "вставку" через связанные серверы. Я знаю, что это возможно с помощью MSDTC ... но работает ли это между MS SQL и MYSQL? Любая помощь будет принята с благодарностью. На данный момент ... я могу обновлять и выбирать между двумя базами данных, но при попытке запустить оператор вставки возникает ошибка.
OLE DB provider "MSDASQL" for linked server "**************" returned message "Query-based insertion or updating of BLOB values is not supported.".
Msg 7343, Level 16, State 2, Line 1
The OLE DB provider "MSDASQL" for linked server "**************" could not INSERT INTO table "[*******************]...[**************_options]".
Location: memilb.cpp:1493
Expression: (*ppilb)->m_cRef == 0
SPID: 76
Process ID: 1644
На случай, если кто-то еще захочет узнать ответ: проблема была с переменной - я пытался вставить ее в «длинный текст», и через связанный сервер MS SQL не позволил мне обновить что-либо большее, чем «varchar». Поэтому исправление заключается в:
1) Обновите и измените столбец с longtext -> varchar
2) Вставьте новые данные
3) Обновите и измените столбец обратно с varchar → longtext
Я понимаю, что это ужасный хакер и не сработает для многих, но в моей ситуации это сработало. Спасибо Squillman за общение
Пока разрешения настроены правильно, вы можете просто вставить INSERT. Убедитесь, что пользовательский контекст, который подключается через связанный сервер к MySQL, имеет соответствующие разрешения для таблицы на вашем сервере MySQL.
Чтобы просмотреть настройки безопасности для связанного сервера