MSDE FunClub | 最終更新日 : 2000/08/11 | |
Microsoft Data Engine FunClub |
|
|
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