если я выбираю больше чем 15 полей, я получаю катастрофический отказ

Я нахожусь в аналогичной ситуации. Одна вещь, которую я нашел полезными, создает электронную таблицу каждый месяц с различными приоритетными уровнями для всех вещей, которые Вы хотите купить. Я использую: "ZOMG! ДОЛЖЕН ИМЕТЬ!! 11 дюймов, требуемых как можно скорее, должны скоро купить, купить, если у нас есть деньги, и это - низкоприоритетная покупка. (Вы могли оценить их 1-5, если бы Вы хотели быть более профессиональными :))

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

Несколько уроков:

1) Когда Вы делаете эти электронные таблицы, включаете применимые гарантии, налог, и поставлющийся во всех затратах. Окружите для составления корректировок цен и вещей, которые Вы забыли.

2) Знайте, что на определенное количество Ваших необходимых статей бюджета наложит вето кто-то, который управляет деньгами, знает очень мало о том, что Вы/нуждаетесь, но Вы все еще сообщаете ему. Он возьмет зенитный огонь, если что-то перестанет работать, потому что Вы не заменяли его вовремя. Необходимо дать ему достаточно гибкости для включения объектов из бюджета, все еще удостоверяясь можно завершить все цели и заменить вещи, которые должны быть заменены. Это - необычный способ сказать, "помещает больше, чем Вам абсолютно нужно на Вашем первоначальном бюджете, потому что Вы никогда не будете получать больше, чем Вы просите, и Вы будете всегда добираться меньше..."

3
задан 8 February 2013 в 21:28
3 ответа

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

В панели администратора источника данных ODBC на сервере настройте связанный сервер из системного DSN. На вкладке «Производительность» снимите флажок «Разрешить упреждающую выборку данных для запросов». ХОРОШО-ХОРОШО. Удалите и заново создайте связанный сервер в SQL Management Studio.

Вы можете отключить предварительную выборку, сняв флажок «Включить предварительную выборку данных для запросов» на вкладке «Производительность» при создании или добавлении DSN.

2
ответ дан 3 December 2019 в 06:11

Работает ли это: ВЫБРАТЬ TOP 1 field1, field2, field3 .... field15.
Если да, то как насчет SELECT TOP 10 field1, field2, field3 .... field15.
Если да, то как насчет SELECT TOP 100 field1, field2, field3 .... field15.
Повторить и т. Д.

Предполагая, что в какой-то момент он прерывается, добавьте предложение ORDER BY для столбца (или набора столбцов), которые являются уникальными. Повторите и отрегулируйте количество рядов, пока не определите виновника. Скажем, например, SELECT TOP 12345 работает, а SELECT TOP 12346 - нет. (Здесь важен хороший ORDER BY, чтобы гарантировать, что он каждый раз возвращает один и тот же набор данных.) Теперь используйте диапазон предложения WHERE, чтобы получить только небольшой объем данных, который появляется в нижней части ваших "хороших" данных, а затем немного увеличьте диапазон WHERE, чтобы включить плохую строку. Если это работает сейчас, то это указывает на объем данных, который, по крайней мере, подтверждает ваше первоначальное предположение, и если ошибка все еще отсутствует, посмотрите на строку, которая будет 12346 в этом запросе, и посмотрите, есть ли с ней что-то странное.

Я могу уточнить, если окажется, что это вас куда-то приведет.

1
ответ дан 3 December 2019 в 06:11

Я знаю, что этот вопрос задавали давно, но люди, которые ищут в Google и натолкнулись на этот пост ...

Я предполагаю, что запрос является золотым, когда вы запускаете его на сервере, на котором вы связаны с?

Каков ваш точный запрос?

Вы делаете:

Select * from "the linked server"

-или-

Select * from openquery("the linked server",'Select * from "the table"')

Есть разница:

  1. Сначала извлекаются ВСЕ записи с удаленного сервера, а затем запрос на вашем локальном сервере.
  2. Второй запускает запрос сначала на удаленном сервере. Удаленный сервер отправляет обратно только набор результатов.

Существует вероятность истечения времени ожидания, но я не думаю, что это проблема, с которой вы столкнулись.

Я столкнулся с проблемой при подключении связанного сервера к mysql . Я пробовал №1 выше и, кажется, помню, что получал ту же бесполезную ошибку. Оказалось, что выполнение №1 работает (или работает лучше всего) только с другими SQL-серверами.

1
ответ дан 3 December 2019 в 06:11

Теги

Похожие вопросы