MSDE FunClub 現在までのアクセスカウント数 最終更新日 : 2000/08/11
Microsoft Data Engine FunClub
Since 2000.08.11
SQLServer7.0/MSDE 完全トレーニングテキスト(上巻)
【第4章290p 〜 291p掲載】

-- [SQL04_08.SQL]
--             SQLServer7.0  Transact-SQL言語
--             日本技術ソフト開発  堀川 明
--            http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、ストアドプロシージャの内部で引数の値を
-- 書き換えても呼び出し元には反映しない誤った例です
--

-- カレントデータベースを MySampleTest にする
    USE MySampleTest
GO

-- ( 件処理されました)のメッセージを抑止する
    SET NOCOUNT ON
GO


-- ***************
--   既存の削除
-- ***************
    IF EXISTS (SELECT name FROM sysobjects
                   WHERE name = '合計計算' AND type = 'P ')  
       BEGIN
           DROP PROC  合計計算
       END
GO


-- **********************************************
--   [合計計算]の登録(これは誤りの例です!)
-- **********************************************

    -- Sum = 1+2+3+4+ ... + End の計算を行います
    --        (誤った例です)
    CREATE PROCEDURE 合計計算
                @End  int = 10 , 
                @Sum  int
  AS
    DECLARE @I INT
    SELECT @Sum = 0 , 
           @I   = 1
    WHILE (@I <= @End)
       BEGIN     
          SELECT @Sum = @Sum + @I
          SELECT @I = @I + 1
       END
    RETURN @Sum
GO

-- ********************************
--        プログラムの実行
--        (誤った例です)
-- ********************************
    DECLARE @Total int
    SELECT @Total = 0
    EXEC 合計計算 10 , @Total
    PRINT ''
    PRINT 'これは誤った例です'
    PRINT '1+2+3+ ... + 10 = ' + cast(@Total as varchar)
    PRINT '合計値は正しいですか?'
GO




技術評論社の書籍ガイドへ
上巻:ISBN4-7741-0965-7

ウィンドウを閉じる


(株)日本技術ソフト開発 責任編集:堀川 明
MSDE FunClubに関するご意見・ご要望等ございましたら、 msdefun@horikawa.ne.jp までご連絡下さい。
HOME: http://www.horikawa.ne.jp/msde/


MSDE FunClubの運営は、マイクロソフト社とは一切の関係はありません