Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Есть ли "Тихий режим" EXECUTE?  [new]
Антохин
Member

Откуда:
Сообщений: 1684
Есть процедура MakeData, в которой происходит куча действий, и под конец процедуры возвращается кол-во обработанных операций.

Нужно вызвать данную процедуру MakeData в другой, DoDataChange, но чтобы MakeData только лишь выполнила все внутренние действия и не возвращала бы данные.

Т.е. например как при установке некоторых програм на винде возможно передать параметр (/q или что-то вроде этого), в следствие которого программа устанавливается в "тихом режиме" без всплывающих окон и диалогов.
27 июн 12, 09:22    [12780087]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Klick
Member

Откуда: Стерлитамак - Москва
Сообщений: 1023
Антохин
и под конец процедуры возвращается кол-во обработанных операций.


Каким образом возвращает? И как вам мешает то что возвращается?
27 июн 12, 09:28    [12780106]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
kain111
Member

Откуда:
Сообщений: 227
Klick,
возможно вам поможет команда
SET NOCOUNT OFF  
27 июн 12, 09:33    [12780123]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Антохин
Member

Откуда:
Сообщений: 1684
Klick
Антохин
и под конец процедуры возвращается кол-во обработанных операций.


Каким образом возвращает? И как вам мешает то что возвращается?


Через SELECT.
Мешает тем, что при обработке DoDataChange в программе DELPHI, нужно учитывать несколько RecordSet, что не есть хорошо.
27 июн 12, 09:42    [12780187]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Glamorama
Member

Откуда:
Сообщений: 152
А что мешает внутри DoDataChange сохранять результат MakeData во времянку?
27 июн 12, 10:01    [12780333]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Антохин
Member

Откуда:
Сообщений: 1684
Glamorama
А что мешает внутри DoDataChange сохранять результат MakeData во времянку?


А каким способом? :-)
27 июн 12, 10:03    [12780353]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
invm
Member

Откуда: Москва
Сообщений: 9836
Антохин,

Добавьте в MakeData параметр, определяющий возвращать набор или нет, с дефолтным значением "возвращать".
27 июн 12, 10:23    [12780539]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
temp-for-testing
Member

Откуда:
Сообщений: 384
Glamorama,

А что мешает внутри DoDataChange сохранять результат MakeData во времянку?

А если MakeData возвращает несколько рекордсетов? Вариант с дополнительным параметром, как предложил invm, намного лучше.
27 июн 12, 13:45    [12782514]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Антохин
Member

Откуда:
Сообщений: 1684
invm
Антохин,

Добавьте в MakeData параметр, определяющий возвращать набор или нет, с дефолтным значением "возвращать".


Спасибо за идею!

Я решил не менять код процедуры (тем более не я её писал) и сделал вот так

Glamorama
А что мешает внутри DoDataChange сохранять результат MakeData во времянку?


Если что, вот темка в стороннем форуме в помощь тынц.
27 июн 12, 14:19    [12782779]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
kain111
Member

Откуда:
Сообщений: 227
я же вам написал, добавьте в процедуру только одну строчку в ее начале.
SET NOCOUNT OFF  

и никаких рекордсетов не будет вообще.
28 июн 12, 08:32    [12786395]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
Klick
Member

Откуда: Стерлитамак - Москва
Сообщений: 1023
kain111
я же вам написал, добавьте в процедуру только одну строчку в ее начале SET NOCOUNT OFF и никаких рекордсетов не будет вообще.


SET NOCOUNT никак с рекордсетами не связана!
SET NOCOUNT (Transact-SQL) - Запрещает вывод количества строк, на которые влияет инструкция Transact-SQL или хранимая процедура, в составе результирующего набора.
28 июн 12, 09:05    [12786549]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
kain111
я же вам написал, добавьте в процедуру только одну строчку в ее начале.
SET NOCOUNT OFF  

и никаких рекордсетов не будет вообще.
Что за ерунда какая-то?
Во-первых, не OFF, а ON.
А, во-вторых, это влияет всего лишь на наличие сообщений (<N> row(s) affected)
При чём тут датасеты? Если в процедуре есть SELECTы какие-нибудь или PRINTы, то что будет, по-Вашему?
28 июн 12, 09:07    [12786558]     Ответить | Цитировать Сообщить модератору
 Re: Есть ли "Тихий режим" EXECUTE?  [new]
kain111
Member

Откуда:
Сообщений: 227
извиняюсь, наверное я ошибаюсь. И не то называю рекордсетом.
автор
А, во-вторых, это влияет всего лишь на наличие сообщений (<N> row(s) affected)
При чём тут датасеты? Если в процедуре есть SELECTы какие-нибудь или PRINTы, то что будет, по-Вашему?

конечно же все селекты выведутся. Просто из моей практики при вызове процедуры MSSQL на Oracle через линк были именно проблемы с этими записями типа (<N> row(s) affected). которые куда то тоже передавались. что осложняло получение взвращаемых процедурой значений.
11 июл 12, 08:46    [12848497]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить