| MSDE FunClub |
|
最終更新日 : 2000/08/21 |
|
Microsoft Data Engine FunClub
|
Since 2000.08.21
|
|
SQLServer7.0/MSDE 完全トレーニングテキスト(上巻) |
|
【第8章496p 〜 497p掲載】 |
-- [SQL08_08.SQL]
-- SQLServer7.0 Transact-SQL言語
-- 日本技術ソフト開発 堀川 明
-- http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、
-- トランザクションの未コミット読み取り(READ UNCOMMITTED)
-- を理解します
-- テーブルにデータを書き込むプログラムです
--
-- カレントデータベースを MySampleTest にする
USE MySampleTest
GO
-- (件処理されました)のメッセージを抑止する
SET NOCOUNT ON
GO
-- テストテーブルを作成します
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'SUM_TABLE' AND type = 'U ')
BEGIN
DROP TABLE SUM_TABLE
END
GO
-- テーブルの新規作成
CREATE TABLE SUM_TABLE( NUMBER INT )
GO
-- ***********************************
-- トランザクションによってデータ登録
-- ***********************************
BEGIN TRANSACTION
DECLARE @CNT int
SET @CNT = 0
-- 0,10,20,30,40,50,..,90,100まで
WHILE( @CNT < 100+1 )
BEGIN
-- レコードの登録
INSERT INTO SUM_TABLE VALUES( @CNT )
SET @CNT = @CNT + 10
END
-- SQL08_08R プログラムを実行してください
PRINT ''
RAISERROR('準備ができました。SQL08_08R を実行してください...',0,1)
WITH NOWAIT
-- 20秒間待機する
WAITFOR DELAY '00:00:20'
-- ここでロールバックを行ってデータ登録を無効にする
ROLLBACK TRANSACTION
RAISERROR('End. ROLLBACK Complete!' , 0 , 1 ) WITH NOWAIT
GO