powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / !!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
5 сообщений из 5, страница 1 из 1
!!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
    #32016462
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, пожалуйста,
как вернуть значение выражения из хран.проц., в которой оно строится динамически:

CREATE PROCEDURE [dbo].[test_proc]
@pc_Tbl VARCHAR(80) = NULL, @lnExist INTEGER =-1 OUTPUT
AS
DECLARE @SQLQuery VARCHAR(8000)
SELECT @SQLQuery = ' SELECT * FROM '+@pc_Tbl+....+' @lnExist=@@ROWSET'
EXEC (@SQLQuery)

-- Чтобы @nRetProc присваивалось значение исполнения хранимой процедуры test_proc ?
-- Т.е. на вход процедуры подаётся имя некоторой таблицы, далее строится строка
-- для выполнения различных действий, эта строка исполняется, а числовой результат её
-- исполнения должен возвращаться хранимой процедурой
DECLARE @nRetProc INTEGER
EXEC @nRetProc=test_proc @pc_Tbl='TestTbl'
...
Рейтинг: 0 / 0
!!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
    #32016463
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
declare @sumpays float
declare @mysql nvarchar(4000)
set @mysql = 'set @mysum = @mysum + 1'
set @sumpays = 0
print @sumpays
exec sp_executesql @mysql, N'@mysum float out', @mysum = @sumpays out
print @sumpays
...
Рейтинг: 0 / 0
!!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
    #32016475
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Честно говоря - непонятно, ведь в моём случае выражение @SQLQuery формируется в теле хранимой процедуры test_proc и результат работы выражения @SQLQuery нужно вернуть из хранимой процедуры
А в вашем случае @mysql формируется ....
И потом exec sp_executesql @mysql, N'@mysum float out', @mysum = @sumpays out - не понятно, т.к. мне то надо вызвать хранимую процедуру, передать в неё входные параметры и получить на выходе значение выражения @SQLQuery
...
Рейтинг: 0 / 0
!!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
    #32016478
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CREATE PROCEDURE [dbo].[test_proc]
@pc_Tbl VARCHAR(80) = NULL, @lnExist INTEGER =-1 OUTPUT
AS
DECLARE @SQLQuery NVARCHAR(4000)
SELECT @SQLQuery = ' SELECT * FROM '+@pc_Tbl+....+' @lnExist=@@ROWSET'
exec sp_executesql @SQLQuery, N'@lnExist int out', @lnExist = @lnExist out
GO
...
Рейтинг: 0 / 0
!!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
    #32016502
Alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! И всё же не совсем удобочитаемы синтаксис у MS SQL в данном случае (:
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / !!! Вернуть значение выражения из хран.проц., в которой оно строится динамически
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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