2017-08-01 11 views
2

インラインコメント付きDB2 CLPのエラーが表示されます。誰かがインライン・コメント構文がDB2コマンド行プロセッサーでサポートされていることを知っていますか? 我々はDB2 LUW 10.5 Comment Syntax記事を見てきた、と私たちはこのような何かを書いた:それは私たちがしようとしたツール(IBM Data Studioの)で動作しますが、私たちのDBAは(それがDB2 CLPに失敗したことを報告しているDB2 CLPインラインコメント

SELECT * FROM sysibm.sysdummy1; --IGNORE-THIS

db2)。

これは動作します:

create table testtab (column1 char(1), --IGNORE-THIS 
column2 char(1)) 
DB20000I The SQL command completed successfully. 

これはしません:

grant select on table testtab to user someName; --IGNORE-THIS 
db2 -tvf test.sql 

DB21007E End of file reached while reading the command. 

誰もがここで間違っているものを知っていますか?

+0

あなたはDB2 CLPを意味しますか? DB2 clpでLUW用のDB2 V11.1.1.1と同じ現象が発生します。 – mao

+0

はい、コマンド行プロセッサー(CLP)https://www.ibm.com/support/knowledgecenter/en/SSEPGG_10.5.0/com.ibm.db2.luw.admin.cmd.doc/doc/r0010409.html – radumanolescu

+0

CLP -fオプションのコメント文字は、行の空白でない最初の文字でなければならないことがLUWドキュメントに記載されています。しかし、CLPは、ストアドプロシージャとDDLのインラインコメントを受け入れますが、それは思われるすべてのステートメントについて受け付けません。 – mao

答えて

1

CLPの機能(制限)であり、記述したようにCLPが矛盾しているようです。 PMRの価値があるかもしれません。言い換えれば、インタラクティブCLI(db2cli)を使用すると、SQLExecDirect()文の終端にインラインコメントが続く場合は、SQLExecDirect()を正常に実行できます。また、jdbcドライバはインライン・コメントを受け入れます(Data Studioで見つけたように)。 CLP -fオプションで指定されたドキュメントリンクは、行の最初の空白以外の文字が - または/ *の場合にのみコメントを許可します。here