ファイル パスを保持する DB2 テーブルにフィールドがあります。値は次のようになります。
N:\Folder1\Folder2\Folder3\Folder4\ITP201602
ITPYYYYMM として表示されるタイム スタンプで最後のフォルダーを変更するストアド プロシージャが必要です。ITP は変更されないプレースホルダー値です。このパスを参照する他のソフトウェアで必要になります。
これが私の現在のクエリです。
CREATE PROCEDURE UPDATE_ITP_DOCUMENT_PATH()
LANGUAGE SQL
BEGIN
UPDATE dbname.tablename
SET filepathfield = LEFT(filepathfield, LOCATE('\Folder4\',filepathfield,1)+8) || 'ITP' || CHAR(YEAR(current timestamp)*100 + MONTH(current timestamp))
WHERE idfield = 'idfieldvalue'
END
これの問題は、最後のフォルダーに「Folder4」という名前を付ける必要があることです。最後のフォルダーの名前に関係なく、これが機能することを望みます。
SQL PL で同じことを行う方法はありますが、最後のバックスラッシュの後に変更を適用するだけで、最後のフォルダー名をハードコーディングする必要はありませんか?
ありがとう