2012-02-06 6 views
0

Это repost, но я пытаюсь сформулировать свой вопрос немного лучше.Поиск значений списка поиска SharePoint в базе данных

Я пытаюсь выяснить, где данные для полей списка SharePoint хранятся в базе данных контента, когда поля являются значениями поиска. Как в этом сообщении: https://stackoverflow.com/questions/9137557/sharepoint-list-lookup-values-in-the-database Я знаю, что вы должны прочитать XML и найти правильный столбец в столбце AlUserData. Это прекрасно работает, когда данные являются «Single-line-of-text». Однако я вижу, что если это значение поиска, столбец, на который ссылается в XML, будет равен нулю. Кто-нибудь знает, почему это так, или как я могу найти значения поиска?

+2

что вы пытаетесь достичь? –

+1

Я пытаюсь извлечь некоторые метаданные о файлах прямо из БД. Так, например, у меня есть 50 000 файлов с цветным фоном, установленным в их типе содержимого, а цвет bG - это многосегментное значение, которое использует список. Я хочу получить эти данные и отбросить их, скажем, в электронную таблицу, чтобы у меня был список с именем файла, а также цвет фона (и другие вещи). Я знаю, что могу сделать это через API, но для большого количества файлов требуется слишком много времени для выполнения задания. Я предполагаю, что SQL будет работать лучше. ... Благодаря! –

+0

Кроме того, я не строил это как часть дизайна приложения. Это сценарий, который я собираюсь запустить много в течение недели, но я бы не отправлял ничего, что полагалось на доступ к базе данных sharepoint. –

ответ

0

(1) Вы можете выбрать данные непосредственно из базы данных контента, начиная с AllUserData. Для правильного запроса sql я могу предложить использовать утилиту "SPUD". Как использовать:

  1. открыть его, введите Sharepoint URL-адрес
  2. список выбора для запроса
  3. правой кнопкой мыши -> Создавать список SQL
  4. копию и выполнить в студии управления Sql

В результатах запроса вы можете найти значение столбца.

(2) Но я предлагаю использовать модель объекта Sharepoint, с некоторой оптимизацией она работает быстро до 500 тыс. Элементов.

(3) Попробуйте использовать «Linq для Sharepoint» выполнить большой запрос в список по одному запросу CAML

+0

Спасибо за ответ ... Я решил проблему по-другому, но если я сделаю это снова, я дам вам знать, как это происходит. –

Смежные вопросы