powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Stored Proc + AccessXP = Проблема
15 сообщений из 15, страница 1 из 1
Stored Proc + AccessXP = Проблема
    #32235332
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Интересная трабла обнаружилась:
В одной из ХП есть такой код

SELECT idKlient, ........
into #Klienty
FROM Klienty
получается более 10000 записей

Так вот, запуская эту ХП из QA, получаю нормальные данные, а если запускаю из Access, то выдает усеченные записи, как выяснилось в табличку #Klienty попадает только 10000 записей, то есть то число, которое прописано в параметрах Аксесса (количество записей, которые кешируются в проекте).

Может оно так и надо, но я удивлен.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235336
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
см. параметр MaxRecord по умолчанию он равен 10 000
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235342
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это понятно, но почему этот параметр влияет на ХП, которая работает на сервере?
Или это нормально когда ХП выдает разные результаты в зависимости от того откуда ее запустили?
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235352
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто тебе сказал, что ХП не дает больше 10000 записей?
Это аксес больше не берет
Нигде ничего на ХП не влияет.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235354
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
енто сделано
шобы ваш любимый
сетевой трафик
не перегружалси
придет на клиента
стока записёв
скока указано в
параметрах
а если хоцца
ишо, то жми
кнопку внизу окна
и новая порция
прискачет
а не ндравица
то ставь 0 в
параметрах
и тогда усе
будет итить
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235356
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>но почему этот параметр влияет на ХП, которая работает на сервере?

Потому что есть такая штука как настройки (директивы, хинты и т.п.), с помощью оных можно управлять поведением сервера.
Открой профайлер да и посмотри что Акес шлет сиквелу, SET ROWCOUNT 10000 он шлет.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235373
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во, блин, накинулись
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235471
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Видимо я плохо объяснил.
Сама ХП выдает не более 20 записей. Проблема в том, что значения в этих 20-ти записях отличаются в зависимости от того, откуда запущена ХП. Разбор полетов показал, что проблема проявляется в этом куске ХП:

SELECT idKlient, ........
into #Klienty
FROM Klienty

при запуске из Аксесса в табличку #Klienty попадают не все записи из таблицы Klienty, а только 10 000 (если MaxRecord в Аксессе = 10 000)

Потом эти записи внутри ХП группируются, обсчитываются и.т.п и выдается сводная информация по месяцам (те самые 20 записей).

Так вот при запуске этой ХП из QA мы имеем правильные помесячные данные, а при запуске из Access - нет.

А если я увеличиваю значение MaxRecords до, скажем 100 000 (то есть большее, чем количество записей в таблице Klienty), то и в Аксессе эта ХП показывает правильные результаты.

Повторюсь, может оно и правильно, может оно так и должно быть, только такое поведение меня несколько озадачило.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235481
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>А если я увеличиваю значение MaxRecords до, скажем 100 000

Тебе уже Хам трамвайный написал: 0 (ноль)- все записи. И не мучайся.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235485
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При работе этой ХП в Аксесс передается только 20 записей.
Тогда причем здесь MaxRecords?
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235518
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть такая полезная утилита - Profiler

При выполнении этой процедуры из Ассекса первая строка
SET ROWCOUNT 10000
а затем вызов твоей процедуры
тут-то и собака порылась

поставь в процедуре
SET ROWCOUNT 0
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235521
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуйте с какой-нибудь своей табличкой:

CREATE PROCEDURE xp1
AS
SET NOCOUNT ON

SELECT idKlient
into #Klienty
FROM Klienty

SET NOCOUNT OFF
select count(*)
from #Klienty

RETURN

При MaxRecords, скажем 100.
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235524
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кажись дошло наконец-то....
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32235808
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хочу уточнить
SET ROWCOUNT 10000
получается эта команда северу не слать 10000 записей, а обработать только 10000 записей. соответственно раз 10000 записей обработано то и шлется 10000.
а если известно что получится(отправится) 20 записей из обработки 20000
все равно нада ставить SET ROWCOUNT 20000 ?
...
Рейтинг: 0 / 0
Stored Proc + AccessXP = Проблема
    #32236215
Nick987
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На это я и попался.
MaxRecords 10000, который установлен в Аксесс влияет на все выполнение ХП, а не только на вывод результирующих записей, соответственно для правильного выполнения ХП вне зависимости от контекста теперь ставлю в начало процедуры SET ROWCOUNT 0
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Stored Proc + AccessXP = Проблема
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]