Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/14: Рейтинг темы: голосов - 14, средняя оценка - 4.64
gorez

Stored Procedure

07.05.2008, 12:45. Показов 3000. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Народ, подскажите, почему не возвращаются данные из хранимой процедуры(возвращаться ведь должна переменная @out):
T-SQL
1
2
3
4
5
6
7
create procedure proc1 (@_name char)
as
declare
@out integer 
begin
select @out=count(*) from tab1 where name=@_name
end
Процедуру регистрировал через DataEnvironment, и что за ошибка:
Procedure 'proc1' expects parameter '@_name', which was not supplied
Есть ли другой способ вызывать хранимую процедуру, которая бы возвращала данные?
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.05.2008, 12:45
Ответы с готовыми решениями:

Stored Procedure
Решил поучить ADO.NET по Троелсену, в SQL Server Management Studio создал БД "AutoLot" и добавил таблицу "Invertory" с 4...

Неполадка по stored procedure
Работа в базе данных Northwind. Нужно создать процедуру, которая получит код покупателя из Customers как входной параметр, и возвратит...

Просмотр Stored Procedure
Как запросом просмотреть содержимое(source) Stored Procedure?

16
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
11.05.2008, 17:08
T-SQL
1
2
3
4
5
6
7
8
create procedure proc1 (@_name char)
as
declare
@out1 integer out
begin
select @out=count(*) from tab1 where name=@_name
end
return @out1
попробуйте так
0
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
11.05.2008, 17:18
ошибочка
все @out на @out1 замените, всетаки out суж. слово
0
gorez
13.05.2008, 14:20
Спасибо за ответ, можно еще один вопросик: как кроме как из DataEnvironment вызывать процедуры?
gorez
13.05.2008, 16:05
Alex Lee, кстати не работает
нельзя писать output в теле объявления переменных
может еще что-нибудь подскажешь?
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
13.05.2008, 16:36
А SQL какой ? У меня 2000. Ну чичас еще попробую
0
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
13.05.2008, 16:46
T-SQL
1
2
3
4
5
6
7
create procedure proc1 (@_name char)
@out1 int out
as
begin
select @out1=count(*) from tab1 where name=@_name
end
return @out1
0
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
13.05.2008, 17:49
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Global cmd As ADODB.Command
 
Set cn = New ADODB.Connection
    cn.ConnectionString = 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=lex;Initial Catalog=aststoreb;Data Source=SDATA1'
    cn.Open
    
Set cmd = New ADODB.Command
    cmd.ActiveConnection = cn
    cmd.CommandText = 'managers' --yfpdfybt cnjhtl ghjwtlehs
    cmd.CommandType = adCmdStoredProc
    cmd.Execute
что то типа такого, давно не пользовался VB но помню что код работал

первая строка в модуле объявляется
у вас другие параметры могут быть
0
gorez
13.05.2008, 20:14
Слушай, если не сложно, поясни пожалуйста
Visual Basic
1
2
3
4
....
cmd.CommandText = 'managers' --yfpdfybt cnjhtl ghjwtlehs
cmd.CommandType = adCmdStoredProc
cmd.Execute
-что такое CommandText и 'managers'?
-и как объект типа Command знает какую именно запускать процедуру?
-если managers - название процедуры, то где указываються ее параметры?
0 / 0 / 0
Регистрация: 24.03.2008
Сообщений: 90
14.05.2008, 11:02
cmd.CommandText = 'managers' --название sp
cmd.CommandType = adCmdStoredProc -- объявляем что CommandText это sp
cmd2.Parameters(1).Value='ваши параметры' --входные параметры, но вам --они не нужны в вашей sp

cmd.Execute --выполнение sp
0
gorez
19.05.2008, 16:45
Если не сложно, напиши как для этой процедуры
T-SQL
1
2
3
4
5
6
7
8
create procedure proc1 
@_name char,
@out1 int out
as
begin
select @out1=count(*) from tab1 where name=@_name
end
return @out1
(для параметров @_name и @out1) будет выглядеть
cmd2.Parameters(1).Value=....
gorez
25.05.2008, 18:21
Alex Lee , так ты напишешь или нет?
5 / 5 / 0
Регистрация: 20.02.2008
Сообщений: 141
25.05.2008, 19:47
BOL
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
Dim cn As New ADODB.Connection
Dim cmd As New ADODB.Command
Dim rs As New ADODB.Recordset
Dim fldloop As ADODB.Field
Dim param1 As Parameter, param2 As Parameter, param3 As Parameter
Dim provStr As String
Dim royalty As Variant
    
Private Sub spStart()
 
' Connect using the SQLOLEDB provider.
cn.Provider = 'sqloledb'
 
' Specify connection string on Open method.
provStr = 'Server=MyServer;Database=pubs;Trusted_Connection=yes'
cn.Open provStr
 
' Set up a command object for the stored procedure.
Set cmd.ActiveConnection = cn
cmd.CommandText = 'myProc'
cmd.CommandType = adCmdStoredProc
 
' Set up a return parameter.
Set param1 = cmd.CreateParameter('Return', adInteger, adParamReturnValue)
cmd.Parameters.Append param1
            
' Set up an output parameter.
Set param2 = cmd.CreateParameter('Output', adInteger, adParamOutput)
cmd.Parameters.Append param2
  
' Set up an input parameter.
Set param3 = cmd.CreateParameter('Input', adInteger, adParamInput)
cmd.Parameters.Append param3
royalty = Trim(InputBox('Enter royalty:'))
param3.Value = royalty
 
' Execute command, and loop through recordset, printing out rows.
Set rs = cmd.Execute
 
Dim i As Integer
While Not rs.EOF
    For Each fldloop In rs.Fields
        Debug.Print rs.Fields(i)
        i = i + 1
    Next fldloop
    Debug.Print ''
    i = 0
    rs.MoveNext
Wend
 
' Need to close recordset before getting return 
' and output parameters.
rs.Close
 
Debug.Print 'Program ended with return code: ' & Cmd(0)
Debug.Print 'Total rows satisfying condition: ' & Cmd(1)
cn.Close
0
gorez
26.05.2008, 09:55
ну ты мастер, спасибо огромное!!!
gorez
26.05.2008, 14:25
только что такое Debug.Print ......?
5 / 5 / 0
Регистрация: 20.02.2008
Сообщений: 141
26.05.2008, 14:40
Это пример для VB. Debug.Print - отладочный вывод данных

В ASP используйте Response (или вообще не используйте, если процедура не возвращает рекордсет, а только параметры)
0
5 / 5 / 0
Регистрация: 20.02.2008
Сообщений: 141
26.05.2008, 14:41
Это пример для VB. Debug.Print - отладочный вывод данных

В ASP используйте Response (или вообще не используйте, если процедура не возвращает рекордсет, а только параметры)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.05.2008, 14:41
Помогаю со студенческими работами здесь

Could not find stored procedure 'c'
Доброго времени суток. Можете помочь и тыкнуть лицом в ошибку? При обращении к хранимой процедуре uspCreateInOut выдается ошибка...

SELECT in Stored Procedure
U menya takaya problema: est' tablica 10,000,000 zapisey s clasternim index-om, imeetsya khranimaya procedura v kotoruu peredautsya...

Could not find stored procedure
Error Code = 80040e14 Code meaning = I Source = Microsoft OLE DB Provider for ODBC Drivers Description = Could not find stored...

stored procedure int parametr
USE GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE . @author nvarchar(50) = '', @id int ,

SQL Server Stored Procedure
Народ, подскажите, почему не возвращаются данные из хранимой процедуры(возвращаться ведь должна переменная @out): create procedure proc1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru