0

OPTIONキーワードの使い方を知っている人はいないかと思います。

私が読んでいた古いCソースコードでこれに遭遇しました。

OPTION SELECT ROWID
FROM TABLE_1
WHERE PRODUCT_CODE = ANY(SELECT PRODUCT_CODE FROM PRODUCT_TABLE WHERE PRODUCT_GROUP='value a')
FOR UPDATE NOWAIT;
SELECT ROWID
FROM TABLE_2
WHERE PRODUCT_CODE = 'value b'
FOR UPDATE NOWAIT;
UPDATE TABLE_3
SET ...
WHERE PRODUCT_CD = 'value b'

*最初のコメントに基づいてクエリを更新しました。基本的に、Cコードは3つのSQLステートメントでSQLステートメントを作成しました。それから結果を得ました。2つのステートメントを与えると、オラクルは何を返すのだろうかと思っていました。どのselectステートメントの結果が返されますか?または、最初のものがOPTIONキーワードで指定されたため、2番目のものを返すだけですか?

4

3 に答える 3

2

あなたのコードをもっと投稿できますか? OPTIONは予約語なので、再定義できません。

通常、次のような操作に使用されます。

GRANT CREATE INDEX TO user WITH ADMIN OPTION;
于 2010-02-15T09:57:57.943 に答える
2

『Oracle Database SQL言語リファレンス』のブックには、キーワード「OPTION」が含まれています。 http://download.oracle.com/docs/cd/B28359_01/network.111/b28531/authorization.htm#sthref821

于 2010-02-15T10:12:39.987 に答える
2

そこには意味がないように見えるOracleのキーワードとして。これが Pro*C ファイルの場合、OPTION何かに設定されるマクロがどこかに定義されていexec sqlますexec sql declare something cursor forか? 後者はカーソル名を固定するsomethingため、ファイルごとに1回しか使用できません。optionおそらく、これは...というカーソルを宣言するための省略形です。

ただし、これに関するコードをさらに見ると役立ちます。

于 2010-02-15T10:26:46.483 に答える