| MSDE FunClub |
|
最終更新日 : 2000/06/12 |
|
Microsoft Data Engine FunClub
|
Since 2000.06.12
|
|
SQLServer7.0/MSDE 完全トレーニングテキスト(上巻) |
|
【第1章77p 〜 78p掲載】 |
-- [SQL01_21.SQL]
-- SQLServer7.0 Transact-SQL言語
-- 日本技術ソフト開発 堀川 明
-- http://www.horikawa.ne.jp/msde/
--
-- このSQLプログラムは、
-- バイナリデータの使い方を認識します
--
-- ( 件処理されました)のメッセージを抑止する
SET NOCOUNT ON
GO
DECLARE @B2 binary(2) -- バイナリの作業用変数宣言
DECLARE @I int , @I2 int
-- バイナリデータは、0X の16進数形式で代入する
SELECT @B2=0X0102 -- 102H は 258 です
SELECT @I = CONVERT(int,@B2)
PRINT ''
PRINT "I="+ STR(@I)
SELECT @I2 = 258
IF NOT @B2 = 258 PRINT 'ERROR!'
IF NOT @B2 = @I2 PRINT 'ERROR!'
GO
-- バイナリは、バイトコード文字列の単純な連結と考える
-- バイトデータを + で連結する
DECLARE @B6 varbinary(6)
DECLARE @V6 varbinary(6)
-- + 記号を使っても使わなくても同じ
SELECT @B6 = 0X01+0X02+0X03+0X04+0X05+0X06
SELECT @V6 = 0X010203040506
IF @B6 = @V6 PRINT 'OK!'
-- 部分バイナリコード文字列の取得
PRINT SUBSTRING(@B6,1,1)
PRINT SUBSTRING(@B6,2,1)
PRINT SUBSTRING(@B6,3,1)
PRINT SUBSTRING(@B6,4,1)
PRINT SUBSTRING(@B6,5,1)
PRINT SUBSTRING(@B6,6,1)
PRINT SUBSTRING(@B6,1,2)
PRINT SUBSTRING(@B6,3,2)
PRINT SUBSTRING(@B6,1,6)
PRINT ''
GO
-- バイナリデータの部分変更処理
DECLARE @B8 binary(8)
SELECT @B8 = 0X01+0X02+0X03+0X04+0X05+0X06+0X07+0X08
PRINT @B8
SELECT @B8 = CONVERT(binary(8),STUFF(@B8,3,3,0XAA+0XBB+0XCC))
PRINT @B8
GO