Oracle公式のSQL言語リファレンスは、丸や四角を線で結んだ図形構文図は殆どの場合正しいが、Oralcle版BNF(バッカス正規形構文)は不具合が多い。
てっきりバッカス正規形構文から自動的に図形構文図を作っているのかと思ったが、品質の差が大きいので違うらしい。
MicrosoftのSQL Serverのリファレンスにも不具合は有るが、英語版のリファレンスのGitに不具合を報告すればすぐに直してくれる。日本語版のリファレンスの不具合は、報告しても反応は無いが、いずれ英語版の記載の修正が日本語版にも降ってくるはず。多分。
しかしOracleは、そもそもどこに報告すれば良いのかわからない。品質はぼろぼろで自分たちではどうにもしないのに。
以下は、SQL言語リファレンスのバッカス正規形構文に見つけたのバグ一覧。
バッカス正規形構文はSQL言語リファレンスのバッカス正規形構文のページに則っている。
バッカス正規形構文が下書きのまま公開されている
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_add_cache_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_drop_cache_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/con_id_to_guid.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/con_id_to_uid.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/level_group_type.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/memoptimize_write_clause.html
かっこの誤用
かっこの誤用1 中かっこを使うべきところを、かっこを使っている
Description of add_delete_secret_seps
上記の(ADD | UPDATE)はADD UPDATEの何れか片方が選ばれる事を表す。
バッカス正規形構文では'('と')'に文法上の意味は無いため、'(' ')'という文字を表すことになる。
正しくはかっこ内の項目のうち、1つが必須であることを表す中かっこ'{' '}'がかっこの代わりに使われるべき。
下記のページで確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_meas_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_update_secret_seps.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/append_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/append_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_analytic_view.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_attribute_dimension.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_cluster.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_context.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_hierarchy.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_indextype.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_materialized_vw_log.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_operator.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/identity_options.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/insert_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_on_error_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_parameters.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_query_column.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_query_returning_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_relative_object_access.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_transform_returning_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_value_on_mismatch_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_value_return_type.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/keep_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/logical_replication_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_settings_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/remove_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/rename_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/replace_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/set_op.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/to_char_char.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/identity_options.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_analytic.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_set_analytic.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_prob_analytic.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/approx_sum.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_pmem_fs.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_cost_analytic.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_details_analytic.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/component_actions.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/convert_database_clause.html
かっこの誤用2 偶然)...となって安心し中かっこ/大かっこが抜けている
Description of the illustration alter_java.eps
4行目の下記は、かっこで囲まれたmatch_stringを複数指定できる事を表している。
( match_string [, ] { schema_name | - } )...
しかしこの記載では繰り返されるのは閉じかっこ記号のみ。
正しくは、中かっこで囲みこう書くべき。
{ ( match_string [, ] { schema_name | - } ) }...
下記のページで確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_java.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/array_dml_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_java.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_storage_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/list_partitionset_desc.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/range_partitionset_desc.html
かっこの誤用3 混同している上カンマが抜けている
Description of the illustration attr_dim_using_clause.eps
- source_clause を、,区切りで複数繰り返せる事を示す意図。繰り返しの指定に中かっこの代わりに誤ってかっこを使っている。加えて、区切り文字の,の記載が無い。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/attr_dim_using_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/application_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_storage_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/list_partitionset_desc.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/range_partitionset_desc.html
かっこの誤用4 かっこをエスケープして使っている
Description of the illustration drop_constraint_clause.eps
かっこを中かっこと混同して文法上の意味が有ると誤解し、文字の中かっこを表現するためにエスケープしている。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_meas_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/checksum.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_scalar.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/result_cache_clause.html
かっこの誤用5 不要なかっこ
Description of JSON_value_on_mismatch_clause
最後から2行目のMISSING DATA、EXTRA DATA、TYPE ERRORはかっこで囲う必要は無い。また、囲ってはいけない。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_value_on_mismatch_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_parameters.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/identity_options.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/hier_id.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/drop_constraint_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_pmem_fs.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/prediction_ordered.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_value_return_type.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/partitioning_storage_clause.html
かっこの誤用6 中括弧が抜けている
Description of JSON_value_on_mismatch_clause
最後から2行目は、中括弧が抜けている。
こうなるべき。
[ ( { MISSING DATA | EXTRA DATA | TYPE ERROR } ) ]
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/hier_id.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_value_on_mismatch_clause.html
- https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/img_text/advanced_index_compression.html
- https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/img_text/alter_dimension.html
- https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/img_text/array_step.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/clause_options.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/clustering_columns.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/component_actions.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/controlfile_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/last_value.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/lob_storage_parameters.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/modify_external_table_properties.html
かっこの誤用7 開き/閉じかっこそれぞれを[ ]で囲っている
Description of the illustration key_clause.eps
- 開きかっこ、閉じかっこそれぞれを[ ] で囲ってしまっているため、開きかっこだけ有り閉じかっこは無いといった不整合を許してしまう。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/key_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/dim_key.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alternate_key_clause.html
かっこの誤用8 大かっこを使うべきところを、中括弧を使っている
- 4行目の中括弧は大かっこが正しい。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_tablespace_set.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/database_logging_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/individual_hash_partitions.html
かっこの誤用9 大かっこが抜けている
Description of inline_external_table_properties
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/inline_external_table_properties.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/lead_lag_clause.html
その他のSQL言語リファレンスの記載ルール違反
キーワード以外も強調されてしまっている
Description of the illustration enable_disable_volume.eps
下記で縦線が強調されているように、キーワードではない部分も強調されてしまっている。
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_volume_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_flashback_archive.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_xmlschema_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/compound_expression.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_flashback_archive.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_restore_point.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/cube_table.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/disk_online_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/diskgroup_availability.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/enable_disable_volume.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/flashback_archive_retention.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/lob_compression_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/lob_storage_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/nested_table_col_properties.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/partitioning_storage_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_close.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/timeout_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/truncate_cluster.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/truncate_table.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/varray_storage_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/xmlquery.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/xmltype_storage.html
キーワードの強調漏れ
Description of the illustration enable_disable_volume.eps
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_update_secret_seps.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/partitioning_storage_clause.html
繰り返しの中でカンマが抜けている
Description of the illustration alter_datafile_clause.eps
- 3行目のfilenumberの前の,が抜けている
下記で確認している。
- https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/img_text/alter_datafile_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/clause_options.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_datafile_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/modify_column_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/partial_database_recovery.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_datafile_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_general_recovery.html
誤ったエスケープ
ドットを誤ってエスケープしている
Description of JSON_relative_object_access
下記を確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/hier_id.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_relative_object_access.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/nested_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/source_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/sub_av_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/wildcard.html
カンマを誤ってエスケープしている
下記で確認。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/nested_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/inline_external_table.html
アスタリスクを誤ってエスケープしている
確認できているのはこのページのみ。
等号を誤ってエスケープしている
Description of the illustration create_analytic_view
下記で確認している。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_analytic_view.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_attribute_dimension.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_context.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_cluster.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_hierarchy.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_indextype.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_materialized_vw_log.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_operator.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_settings_clauses.html
セミコロンを誤ってエスケープしている
Description of drop_pmem_filestore
コロンを誤ってエスケープしている
[Description of regular_entry
](https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/regular_entry.html)
下記で確認。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/regular_entry.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/modify_external_table_properties.html
シングルクォートを誤ってエスケープしている
Description of the illustration pdb_settings_clauses.eps
下記で確認
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/pdb_settings_clauses.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/modify_external_table_properties.html
かっこを誤ってエスケープしている
下記で確認
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/modify_external_table_properties.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/inline_external_table.html
Oracleの文法に適していない
中括弧を開くor閉じる位置が間違っている
Description of the illustration advanced_index_compression.eps
{ COMPRESS ADVANCED [ LOW | HIGH ] } | NOCOMPRESS
- 中かっこを閉じる位置が間違っている。
COMPRESS ADVANCED・・・もしくは NOCOMPRESS のどちらか片方が必須。なので閉じる位置はNOCOMPRESSの前ではなく下記のように後で閉じるのが正しい。
{ COMPRESS ADVANCED [ LOW | HIGH ] | NOCOMPRESS}
下記で確認。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/advanced_index_compression.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/dim_key.html
繰り返しの表記が抜けている
下記で確認。
Description of the illustration add_disk_clause.eps
ADD
{ SITE sitename [ QUORUM | REGULAR ] [ FAILGROUP failgroup_name ]
DISK qualified_disk_clause [, qualified_disk_clause ]...
}...
SITE sitenameの指定は、その他の指定と独立して任意なので中かっこはおかしい。
ただし最後の繰り返しを受けるために中かっこは必要。
ADD
{ [ SITE sitename ] [ QUORUM | REGULAR ] [ FAILGROUP failgroup_name ]
DISK qualified_disk_clause [, qualified_disk_clause ]...
}...
かっこ/中括弧/大かっこが余計
Description of the illustration alter_index
ALTER INDEX [ schema. ] index_name [ index_ilm_clause ]
{ { deallocate_unused_clause
| allocate_extent_clause
| shrink_clause
| parallel_clause
| physical_attributes_clause
| logging_clause
| partial_index_clause
} ...
| rebuild_clause
| PARAMETERS ( 'ODCI_parameters' )
)
| COMPILE
| { ENABLE | DISABLE }
| UNUSABLE [ ONLINE ] [ { DEFERRED | IMMEDIATE } INVALIDATION ]
| VISIBLE | INVISIBLE
| RENAME TO new_name
| COALESCE [ CLEANUP ] [ ONLY ] [ parallel_clause ]
| { MONITORING | NOMONITORING } USAGE
| UPDATE BLOCK REFERENCES
| alter_index_partitioning
}
;
- 12行目の")" が余計。
下記を確認。
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/alter_index.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_attribute_dimension.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_datafile_clause.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_hierarchy.html
- https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_rollback_segment.html
Description of the illustration alter_datafile_clause.eps
- 3行目のfilenumberの前の,が抜けている
- 4行目の閉じ中括弧が不要
Description of alter_pmem_filestore
ALTER PMEM FILESTORE filestore_name
(
[ RESIZE size_clause ] | autoextend_clause
| ( MOUNT [ { MOUNTPOINT file_path | BACKINGFILE file_name } ] [ FORCE ] )
| DISMOUNT
)
- 2行目と最終行のかっこは中かっこの誤り
[ RESIZE size_clause ]略と、MOUNT略と、DISMOUNT略の何れか一つが選ばれるべき。
かっこはただのかっこという文字でしかなく、かっこ内の項目のうち、1つが必須であることを表す中かっこが正しい。 - MOUNTの前と [FORCE] の後のかっこは不要
この記載だとMOUNTから[FORCE]までをかっこが囲んでいるとなっているが、そうではない。
よってMOUNTの前と [FORCE] の後のかっこは不要。
Description of the illustration alter_system_set_clause.eps
{ set_parameter_clause
| USE_STORED_OUTLINES = (TRUE | FALSE | category_name)
| GLOBAL_TOPIC_ENABLED = (TRUE | FALSE)
}
- TRUE|FALSEを囲うかっこは中かっこの誤り
バッカス正規形構文の文法においてかっこはただのかっこ文字でしかない。
Description of the illustration pdb_close
-
先頭と末尾の中かっこが不要
-
[IMMEADIAGE]・・・と[ABORT]・・・のどちらかを選ばせるために下記のように中かっこが必要
CLOSE { [ IMMEDIATE ] [ instances_clause | relocate_clause ]
| [ ABORT ] [ instances_clause ] }
Description of application_clauses
- 最後から2行目の/が不要
[Description of add_external_partition_attrs
](https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/add_external_partition_attrs.html)
- 最後のpreが不要
Description of the illustration partitioning_storage_clause.eps
json_storage_clauseの記載が抜けている
図形構文図も間違っている
Description of result_cache_clause
- バッカス正規形構文の1行目でかっこがエスケープされている
かっこはバッカス正規形構文ではただの文字なのでエスケープ不要。 - 2行目と4行目の開きかっこと閉じかっこが不要
- 図形構文図の開きかっこと閉じかっこが対応していないので、図形構文図は間違っている。
- どちらか片方を選ばせる中かっこのつもりでかっこを誤用している
- バッカス正規形構文と図形構文図の両方で、MODE {DEFAULT|FORCE}と , STANDBY {ENABLE|DISABLE}がそれぞれ任意になっている。これだと前者を指定せず後者だけ指定可能で、その場合に,から始まる構文となってしまう。
- 同様に、STANDBY {ENABLE|DISABLE}と, MODE {DEFAULT|FORCR}もそれぞれ任意になってしまっている。
正解は例えばこうではないだろうか。
RESULT_CACHE ( {
[ MODE {DEFAULT | FORCE} [ , STANDBY {ENABLE | DISABLE} ] ]
|
[ STANDBY {ENABLE | DISABLE} [ , MODE {DEFAULT | FORCE} ] ]
} )
バッカス正規形構文と図形構文図で書いていることが違う
-
[Description of the illustration create_materialized_vw_log.eps
](https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/create_materialized_vw_log.html/)
WITHのあたりからしばらく、記載が乖離している。
-
[Description of json_array
](https://docs.oracle.com/cd/F39414_01/sqlrf/img_text/json_array.html)