Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2011, 09:41   #1
Torichka
 
Регистрация: 29.11.2011
Сообщений: 4
По умолчанию SQL. Хранимые процедуры

Код:
CREATE PROCEDURE pSalary
   @opSum FLOAT output, 
	@opAvg FLOAT output
    AS
    BEGIN
  SELECT SUM(price), AVG(price)
  FROM funds
  INTO: @opSum,
  INTO: @opAvg; /*Запись в параметры*/
    END
Как правильно присваивать значение переменным? Попробовала так, не вышло(
Torichka вне форума Ответить с цитированием
Старый 29.11.2011, 09:49   #2
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

Код:
SELECT @opSum=SUM(price), @opAvg=AVG(price)
FROM funds
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 29.11.2011, 11:44   #3
Torichka
 
Регистрация: 29.11.2011
Сообщений: 4
По умолчанию

Код:
CREATE PROCEDURE pSalary
@price int,  
@new_price int,
@opSum FLOAT output, 
	@opAvg FLOAT output
    AS
    BEGIN
SELECT @opSum=SUM(price), @opAvg=AVG(price)
FROM funds
if (@price>@opAvg) then @new_price=@price-@opAvg;
update funds
    END
Спасибо, я исправила, дополнила процедуру и снова не работает. Скажите пожалуйста в чём ошибка?
Torichka вне форума Ответить с цитированием
Старый 29.11.2011, 11:56   #4
Zer0
Форумчанин
 
Аватар для Zer0
 
Регистрация: 13.12.2007
Сообщений: 788
По умолчанию

Код:
if (@price>@opAvg) then @new_price=@price-@opAvg;
1) then не надо, т.е. просто
Код:
if (@price>@opAvg) 
 SET @new_price=@price-@opAvg;
2) @newPrice - можно было бы и внутрь процедуры перенести:
Код:
Declare @newPrice int
if (@price>@opAvg) then @new_price=@price-@opAvg;
update funds
2) бессмысленно, синтаксис UPDATE такой
Код:
UPDATE [table] SET [field]=[value]
для примера
благодарность - сюда (не забываем писать от кого)
Zer0 вне форума Ответить с цитированием
Старый 29.11.2011, 12:20   #5
Torichka
 
Регистрация: 29.11.2011
Сообщений: 4
По умолчанию

Спасибо...)))

Скажите пожалуйста, как можно переменной к примеру price присвоить значение атрибута из таблицы к примеру funds.
Torichka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хранимые процедуры в SQL 2005 DimaP2010 SQL, базы данных 1 04.03.2011 07:45
Хранимые процедуры SQL Server FreshBreeze SQL, базы данных 6 08.09.2009 00:14
Триггеры и хранимые процедуры SQL FreshBreeze Помощь студентам 6 10.05.2009 14:37
Сложные SQL запросы или хранимые процедуры! Killer_djon БД в Delphi 17 25.03.2008 12:10