| imho.ws |
![]() |
|
|
|||||||
|
Сообщения:
Перейти к новому /
Последнее
|
Опции темы |
|
|
# 1 |
|
Member
Регистрация: 16.10.2002
Адрес: Moscow
Сообщения: 312
![]() ![]() ![]() |
Вопрос по синтаксису хранимых процедур sql server.
Помогите чайнику,пытаюсь разобраться,почему при выполнении:
CREATE PROCEDURE Col_zap @col int out AS select @col=count(*) from biblref GO выдается ошибка. А при выполнении CREATE PROCEDURE Col_zap @col int =0 out AS select @col=count(*) from biblref GO Значение @col после выполнения всегда равно 0,хотя количество записей в таблице biblref далеко не нулевое. Кстати никто не подскажет,где в сети найти грамотный материал по этой теме с хорошим количеством примеров? |
|
|
|
|
# 2 |
|
Junior Member
Регистрация: 17.12.2002
Адрес: [EST], Tallinn
Сообщения: 120
![]() |
Что-то типа этого... за точность не ручаюсь...
create procedure test (@inParam int = 0 OUTPUT) as begin select @inParam = 10 end declare @vParam int declare @sendParam int exec @vParam = test(@sendParam OUTPUT) print @vParam
__________________
"я не волшебник - я только учусь..." (c) ...а зовут меня Олег... |
|
|
|
|
# 6 |
|
Junior Member
Регистрация: 17.12.2002
Адрес: [EST], Tallinn
Сообщения: 120
![]() |
даже если ты сделаешь выборку, используешь как-то эти данные (фильтр и т.п.) - всё равно, колличество обработанных строк будет занесено в переменную @@rowcount.
__________________
"я не волшебник - я только учусь..." (c) ...а зовут меня Олег... |
|
|
|
|
# 8 |
|
Member
Регистрация: 27.08.2002
Адрес: Канада
Пол: Male
Сообщения: 343
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Всё у тебя правильно наверху. Просто при выполнении нужно указать, что параметер, который ты передаёшь - не простой, а OUTPUT (кстати, someone312002 в своем первом примере это указал).
В SQLе так: delcare @count int execute Col_zap @col output в ADO у объекта Parameter есть свойство Direction, которое может принимать несколько значений, среди которых есть adParamInputOutput (=3) и adParamOutput (=2). В ADO.NET тоже самое есть у объекта SqlParameter. |
|
|