HANA 102.05 は、次のコードの実行に失敗します。
CREATE TABLE ATABLE( f INT );
CREATE PROCEDURE TestProc()
AS
BEGIN
SELECT f FROM ATABLE
FOR UPDATE; -- Without FOR UPDATE it works
END;
SELECT 'Hello' FROM DUMMY;
不満:
SAP DBTech JDBC: [257]: SQL 構文エラー: "SELECT" 付近の構文が正しくありません: 行 8 列 2 (位置 124)
で、プロシージャの外側を指しSELECT 'Hello'
ます。プロシージャ自体はエラーなしでコンパイルされます。FOR UPDATE
ディレクティブを削除すると、スクリプト全体が正常に完了します。オリジナルのどこが悪いの?
アップデート
hdbsql.exeから同じクエリを実行すると、次のようになります。
0 rows affected (overall time 26,076 msec; server time 6518 usec)
* 257: sql syntax error: line 5 col 9 (at pos 71) SQLSTATE: HY000
* 257: sql syntax error: incorrect syntax near "END": line 2 col 1 (at pos 32) SQLSTATE: HY000
'Hello'
"Hello"
1 row selected (overall time 4644 usec; server time 143 usec)