オリジナルの作品には SQL 2000 にいくつかの問題があります。エラーを修正し、SQL 2000 で実行しました。
/*************************************************** * ****
作者: (wleii165@yahoo.com)
バージョン: 1.0
作成時刻: 20020227
修正時刻:
機能: 小文字の金額を大文字に変換
パラメータ: n_LowerMoney 小文字の金額
v_TransType Type-- 1: 直接翻訳、0: 言葉で読み上げます
出力: 大文字の金額
*********************************** ******* *******************/
CREATE PROCEDURE dbo.L2U
(
@n_LowerMoney numeric(15,2),
@v_TransType int,
@RET VARCHAR(200) Output
)
AS
@v_LowerStr VARCHAR を宣言(200) -- 小文字の金額
宣言 @v_UpperPart VARCHAR(200)
@v_UpperStr VARCHAR(200) -- 大文字の金額
@i_I int を宣言
set nocount on
select @v_LowerStr = LTRIM(RTRIM(STR(@n_LowerMoney, 20,2))) -- 指定された精度に丸め、データ内の左右のスペースを削除します
select @i_I = 1
select @v_UpperStr = ''
while ( @i_I begin
select @ v_UpperPart = case substring(@v_LowerStr,len(@v_LowerStr) - @i_I 1,1)
WHEN '.' THEN '元'
WHEN '0' THEN 'zero'
WHEN '1' THEN '壹'
' 2' のとき '二'
'3' のとき '叁'
'4' のとき '四'
'5' のとき '五'
'6' のとき '呂'
'7 のとき' THEN '柒'
WHEN '8' THEN '捌'
WHEN '9' THEN '玖'
END
case @i_I
WHEN 1 THEN 'fen'
WHEN 2 THEN 'angle'
WHEN 3 THEN ''
4のときは「」
5のときは「し」