Я пытаюсь выполнить слияние почты в представлении SQL Server 2005. Я создал один и тот же вид дважды, один раз без указания схемы (т.е. DBO) и один раз с указанием схемы. В SQL Server Management Studio, вошедшей в систему с использованием аутентификации Windows, у меня нет проблем с доступом к обоим представлениям.

Используя опцию "Выбрать получателей"> "Использовать существующий список" в Word 2012, я установил соединение с сервером базы данных, используя проверку подлинности Windows. Оба представления включены в список доступных таблиц, как показано ниже.

Выберите базу данных и таблицу

После этого я создал соединение для каждого вида. Я могу успешно слиться с представлением, принадлежащим "dbo". Однако я не могу слиться с мнением, принадлежащим "Разрешению". Я получаю следующую ошибку.

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

Единственное различие, о котором я знаю, состоит в том, что успешный использует схему "dbo" по умолчанию, в то время как другой использует "Permit". Есть ли дополнительный шаг, чтобы гарантировать, что информация схемы используется при объединении? Как мне сделать слияние почты из таблицы или представления, не принадлежащего "dbo"?

Обновить

Я сделал дополнительное тестирование. Глядя на файл ODC, используемый для определения соединения, я вижу, что информация о схеме записана правильно.

ODC файл

Для тестирования я переименовал файл ODC в файл HTM и открыл его в Internet Explorer. Он отображал живые данные из базы данных без проблем.

Затем я попытался выполнить слияние во время прослушивания с помощью SQL Server Profiler, просто чтобы посмотреть, какие запросы пытается выполнить Word.

SQL Server Profiler

Как я и подозревал, Word 2010 не использует информацию схемы при объединении почты.

1 ответ1

0

Это известная проблема в Word 2003, Word 2007 и Word 2010. Есть статья базы знаний Microsoft, которая содержит ответ.

http://support.microsoft.com/kb/918295

В статье описывается процесс для Word 2003 и Word 2007, но Word 2010 похож. Вот что я сделал для Word 2010.

  1. Выход из всех программ Office.
  2. Нажмите кнопку Пуск, выберите пункт Выполнить, введите regedit и нажмите кнопку ОК.
  3. Найдите и щелкните следующий раздел реестра:HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common
  4. В меню « Правка» выберите пункт « Создать» и нажмите « Значение DWORD».
  5. Введите UseQualifiedTableNameForMailMerge и нажмите клавишу ВВОД.
  6. Щелкните правой кнопкой мыши UseQualifiedTableNameForMailMerge и выберите команду « Изменить».
  7. В поле « Значение» введите 1 и нажмите кнопку « ОК».
  8. В меню Файл выберите Выход, чтобы закрыть редактор реестра.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .