diff --git a/src/main/java/com/alibaba/druid/util/OracleUtils.java b/src/main/java/com/alibaba/druid/util/OracleUtils.java index 1e3f3942dc..a01541296a 100644 --- a/src/main/java/com/alibaba/druid/util/OracleUtils.java +++ b/src/main/java/com/alibaba/druid/util/OracleUtils.java @@ -183,4 +183,24 @@ public class OracleUtils { return functions.contains(function_lower); } + + private static Set builtinTables; + + public static boolean isBuiltinTable(String table) { + if (table == null) { + return false; + } + + String table_lower = table.toLowerCase(); + + Set tables = builtinTables; + + if (tables == null) { + tables = new HashSet(); + Utils.loadFromFile("META-INF/druid/parser/oracle/builtin_tables", tables); + builtinTables = tables; + } + + return tables.contains(table_lower); + } } diff --git a/src/main/resources/META-INF/druid/parser/oracle/builtin_tables b/src/main/resources/META-INF/druid/parser/oracle/builtin_tables new file mode 100644 index 0000000000..c3542a592c --- /dev/null +++ b/src/main/resources/META-INF/druid/parser/oracle/builtin_tables @@ -0,0 +1,1353 @@ +all_all_tables +all_apply +all_apply_change_handlers +all_apply_conflict_columns +all_apply_dml_handlers +all_apply_enqueue +all_apply_error +all_apply_error_messages +all_apply_execute +all_apply_key_columns +all_apply_parameters +all_apply_progress +all_apply_table_columns +all_arguments +all_assemblies +all_associations +all_audit_policies +all_audit_policy_columns +all_aw_ps +all_aws +all_base_table_mviews +all_capture +all_capture_extra_attributes +all_capture_parameters +all_capture_prepared_database +all_capture_prepared_schemas +all_capture_prepared_tables +all_catalog +all_change_propagation_sets +all_change_propagations +all_change_sets +all_change_sources +all_change_tables +all_cluster_hash_expressions +all_clusters +all_col_comments +all_col_pending_stats +all_col_privs +all_col_privs_made +all_col_privs_recd +all_coll_types +all_cons_columns +all_cons_obj_columns +all_constraints +all_context +all_cube_attr_visibility +all_cube_attributes +all_cube_build_processes +all_cube_calculated_members +all_cube_dim_levels +all_cube_dim_models +all_cube_dim_view_columns +all_cube_dim_views +all_cube_dimensionality +all_cube_dimensions +all_cube_hier_levels +all_cube_hier_view_columns +all_cube_hier_views +all_cube_hierarchies +all_cube_measures +all_cube_view_columns +all_cube_views +all_cubes +all_db_links +all_def_audit_opts +all_dependencies +all_dequeue_queues +all_dim_attributes +all_dim_child_of +all_dim_hierarchies +all_dim_join_key +all_dim_level_key +all_dim_levels +all_dimensions +all_directories +all_edition_comments +all_editioning_view_cols +all_editioning_view_cols_ae +all_editioning_views +all_editioning_views_ae +all_editions +all_encrypted_columns +all_errors +all_errors_ae +all_evaluation_context_tables +all_evaluation_context_vars +all_evaluation_contexts +all_external_locations +all_external_tables +all_file_group_export_info +all_file_group_files +all_file_group_tables +all_file_group_tablespaces +all_file_group_versions +all_file_groups +all_histograms +all_identifiers +all_ind_columns +all_ind_expressions +all_ind_partitions +all_ind_pending_stats +all_ind_statistics +all_ind_subpartitions +all_indexes +all_indextype_arraytypes +all_indextype_comments +all_indextype_operators +all_indextypes +all_internal_triggers +all_java_arguments +all_java_classes +all_java_compiler_options +all_java_derivations +all_java_fields +all_java_implements +all_java_inners +all_java_layouts +all_java_methods +all_java_ncomps +all_java_resolvers +all_java_throws +all_jobs +all_join_ind_columns +all_libraries +all_lob_partitions +all_lob_subpartitions +all_lob_templates +all_lobs +all_log_group_columns +all_log_groups +all_measure_folder_contents +all_measure_folders +all_method_params +all_method_results +all_mining_model_attributes +all_mining_model_settings +all_mining_models +all_mview_aggregates +all_mview_analysis +all_mview_comments +all_mview_detail_partition +all_mview_detail_relations +all_mview_detail_subpartition +all_mview_joins +all_mview_keys +all_mview_logs +all_mview_refresh_times +all_mviews +all_nested_table_cols +all_nested_tables +all_obj_colattrs +all_object_tables +all_objects +all_objects_ae +all_opancillary +all_oparguments +all_opbindings +all_operator_comments +all_operators +all_outline_hints +all_outlines +all_part_col_statistics +all_part_histograms +all_part_indexes +all_part_key_columns +all_part_lobs +all_part_tables +all_partial_drop_tabs +all_pending_conv_tables +all_plsql_object_settings +all_policies +all_policy_contexts +all_policy_groups +all_procedures +all_propagation +all_published_columns +all_queue_schedules +all_queue_subscribers +all_queue_tables +all_queues +all_refresh +all_refresh_children +all_refresh_dependencies +all_refs +all_registered_mviews +all_registry_banners +all_rewrite_equivalences +all_rule_set_rules +all_rule_sets +all_rules +all_scheduler_chain_rules +all_scheduler_chain_steps +all_scheduler_chains +all_scheduler_credentials +all_scheduler_db_dests +all_scheduler_dests +all_scheduler_external_dests +all_scheduler_file_watchers +all_scheduler_global_attribute +all_scheduler_group_members +all_scheduler_groups +all_scheduler_job_args +all_scheduler_job_classes +all_scheduler_job_dests +all_scheduler_job_log +all_scheduler_job_run_details +all_scheduler_jobs +all_scheduler_notifications +all_scheduler_program_args +all_scheduler_programs +all_scheduler_remote_databases +all_scheduler_remote_jobstate +all_scheduler_running_chains +all_scheduler_running_jobs +all_scheduler_schedules +all_scheduler_window_details +all_scheduler_window_groups +all_scheduler_window_log +all_scheduler_windows +all_scheduler_wingroup_members +all_sec_relevant_cols +all_secondary_objects +all_sequences +all_services +all_source +all_source_ae +all_source_tables +all_sqlj_type_attrs +all_sqlj_type_methods +all_sqlj_types +all_sqlset +all_sqlset_binds +all_sqlset_plans +all_sqlset_references +all_sqlset_statements +all_stat_extensions +all_stored_settings +all_streams_columns +all_streams_global_rules +all_streams_message_consumers +all_streams_message_rules +all_streams_newly_supported +all_streams_rules +all_streams_schema_rules +all_streams_stmt_handlers +all_streams_stmts +all_streams_table_rules +all_streams_transform_function +all_streams_unsupported +all_subpart_col_statistics +all_subpart_histograms +all_subpart_key_columns +all_subpartition_templates +all_subscribed_columns +all_subscribed_tables +all_subscriptions +all_sumdelta +all_sync_capture +all_sync_capture_prepared_tabs +all_sync_capture_tables +all_synonyms +all_tab_col_statistics +all_tab_cols +all_tab_columns +all_tab_comments +all_tab_histgrm_pending_stats +all_tab_histograms +all_tab_modifications +all_tab_partitions +all_tab_pending_stats +all_tab_privs +all_tab_privs_made +all_tab_privs_recd +all_tab_stat_prefs +all_tab_statistics +all_tab_stats_history +all_tab_subpartitions +all_tables +all_trigger_cols +all_trigger_ordering +all_triggers +all_tstz_tab_cols +all_tstz_tables +all_type_attrs +all_type_methods +all_type_versions +all_types +all_unused_col_tabs +all_updatable_columns +all_users +all_ustats +all_varrays +all_views +all_views_ae +all_warning_settings +all_xml_indexes +all_xml_schemas +all_xml_tab_cols +all_xml_tables +all_xml_view_cols +all_xml_views +all_xstream_inbound +all_xstream_inbound_progress +all_xstream_outbound +all_xstream_outbound_progress +all_xstream_rules +audit_actions +cat +catalog +chained_rows +change_propagation_sets +change_propagations +change_sets +change_sources +change_tables +client_result_cache_stats$ +clu +col +cols +database_properties +dba_2pc_neighbors +dba_2pc_pending +dba_addm_fdg_breakdown +dba_addm_findings +dba_addm_instances +dba_addm_system_directives +dba_addm_task_directives +dba_addm_tasks +dba_advisor_actions +dba_advisor_commands +dba_advisor_def_parameters +dba_advisor_definitions +dba_advisor_dir_definitions +dba_advisor_dir_instances +dba_advisor_dir_task_inst +dba_advisor_exec_parameters +dba_advisor_execution_types +dba_advisor_executions +dba_advisor_fdg_breakdown +dba_advisor_finding_names +dba_advisor_findings +dba_advisor_journal +dba_advisor_log +dba_advisor_object_types +dba_advisor_objects +dba_advisor_parameters +dba_advisor_rationale +dba_advisor_recommendations +dba_advisor_sqla_rec_sum +dba_advisor_sqla_tables +dba_advisor_sqla_wk_map +dba_advisor_sqla_wk_stmts +dba_advisor_sqlplans +dba_advisor_sqlstats +dba_advisor_sqlw_journal +dba_advisor_sqlw_parameters +dba_advisor_sqlw_stmts +dba_advisor_sqlw_sum +dba_advisor_sqlw_tables +dba_advisor_sqlw_templates +dba_advisor_tasks +dba_advisor_templates +dba_advisor_usage +dba_alert_history +dba_all_tables +dba_application_roles +dba_apply +dba_apply_change_handlers +dba_apply_conflict_columns +dba_apply_dml_handlers +dba_apply_enqueue +dba_apply_error +dba_apply_error_messages +dba_apply_execute +dba_apply_instantiated_global +dba_apply_instantiated_objects +dba_apply_instantiated_schemas +dba_apply_key_columns +dba_apply_object_dependencies +dba_apply_parameters +dba_apply_progress +dba_apply_spill_txn +dba_apply_table_columns +dba_apply_value_dependencies +dba_aq_agent_privs +dba_aq_agents +dba_arguments +dba_assemblies +dba_associations +dba_attribute_transformations +dba_audit_exists +dba_audit_mgmt_clean_events +dba_audit_mgmt_cleanup_jobs +dba_audit_mgmt_config_params +dba_audit_mgmt_last_arch_ts +dba_audit_object +dba_audit_policies +dba_audit_policy_columns +dba_audit_session +dba_audit_statement +dba_audit_trail +dba_auto_segadv_ctl +dba_auto_segadv_summary +dba_autotask_client +dba_autotask_client_history +dba_autotask_client_job +dba_autotask_job_history +dba_autotask_operation +dba_autotask_schedule +dba_autotask_task +dba_autotask_window_clients +dba_autotask_window_history +dba_aw_ps +dba_aws +dba_base_table_mviews +dba_blockers +dba_capture +dba_capture_extra_attributes +dba_capture_parameters +dba_capture_prepared_database +dba_capture_prepared_schemas +dba_capture_prepared_tables +dba_catalog +dba_change_notification_regs +dba_clu_columns +dba_cluster_hash_expressions +dba_clusters +dba_col_comments +dba_col_pending_stats +dba_col_privs +dba_coll_types +dba_common_audit_trail +dba_comparison +dba_comparison_columns +dba_comparison_row_dif +dba_comparison_scan +dba_comparison_scan_values +dba_connect_role_grantees +dba_cons_obj_columns +dba_constraints +dba_context +dba_cpool_info +dba_cpu_usage_statistics +dba_cq_notification_queries +dba_cube_attr_visibility +dba_cube_attributes +dba_cube_build_processes +dba_cube_calculated_members +dba_cube_dim_levels +dba_cube_dim_models +dba_cube_dim_view_columns +dba_cube_dim_views +dba_cube_dimensionality +dba_cube_dimensions +dba_cube_hier_levels +dba_cube_hier_view_columns +dba_cube_hier_views +dba_cube_hierarchies +dba_cube_measures +dba_cube_view_columns +dba_cube_views +dba_cubes +dba_data_files +dba_datapump_jobs +dba_datapump_sessions +dba_db_links +dba_ddl_locks +dba_dependencies +dba_dim_attributes +dba_dim_child_of +dba_dim_hierarchies +dba_dim_join_key +dba_dim_level_key +dba_dim_levels +dba_dimensions +dba_directories +dba_dml_locks +dba_dmt_free_space +dba_dmt_used_extents +dba_edition_comments +dba_editioning_view_cols +dba_editioning_view_cols_ae +dba_editioning_views +dba_editioning_views_ae +dba_editions +dba_enabled_aggregations +dba_enabled_traces +dba_encrypted_columns +dba_epg_dad_authorization +dba_errors +dba_errors_ae +dba_evaluation_context_tables +dba_evaluation_context_vars +dba_evaluation_contexts +dba_exp_files +dba_exp_objects +dba_exp_version +dba_extents +dba_external_locations +dba_external_tables +dba_feature_usage_statistics +dba_fga_audit_trail +dba_file_group_export_info +dba_file_group_files +dba_file_group_tables +dba_file_group_tablespaces +dba_file_group_versions +dba_file_groups +dba_flashback_archive +dba_flashback_archive_tables +dba_flashback_archive_ts +dba_flashback_txn_report +dba_flashback_txn_state +dba_free_space +dba_free_space_coalesced +dba_high_water_mark_statistics +dba_hist_active_sess_history +dba_hist_baseline +dba_hist_baseline_details +dba_hist_baseline_metadata +dba_hist_baseline_template +dba_hist_bg_event_summary +dba_hist_buffer_pool_stat +dba_hist_buffered_queues +dba_hist_buffered_subscribers +dba_hist_cluster_intercon +dba_hist_colored_sql +dba_hist_comp_iostat +dba_hist_cr_block_server +dba_hist_current_block_server +dba_hist_database_instance +dba_hist_datafile +dba_hist_db_cache_advice +dba_hist_dispatcher +dba_hist_dlm_misc +dba_hist_dyn_remaster_stats +dba_hist_enqueue_stat +dba_hist_event_histogram +dba_hist_event_name +dba_hist_filemetric_history +dba_hist_filestatxs +dba_hist_ic_client_stats +dba_hist_ic_device_stats +dba_hist_inst_cache_transfer +dba_hist_instance_recovery +dba_hist_interconnect_pings +dba_hist_iostat_detail +dba_hist_iostat_filetype +dba_hist_iostat_filetype_name +dba_hist_iostat_function +dba_hist_iostat_function_name +dba_hist_java_pool_advice +dba_hist_latch +dba_hist_latch_children +dba_hist_latch_misses_summary +dba_hist_latch_name +dba_hist_latch_parent +dba_hist_librarycache +dba_hist_log +dba_hist_mem_dynamic_comp +dba_hist_memory_resize_ops +dba_hist_memory_target_advice +dba_hist_metric_name +dba_hist_mttr_target_advice +dba_hist_mutex_sleep +dba_hist_optimizer_env +dba_hist_osstat +dba_hist_osstat_name +dba_hist_parameter +dba_hist_parameter_name +dba_hist_persistent_qmn_cache +dba_hist_persistent_queues +dba_hist_persistent_subs +dba_hist_pga_target_advice +dba_hist_pgastat +dba_hist_plan_operation_name +dba_hist_plan_option_name +dba_hist_process_mem_summary +dba_hist_resource_limit +dba_hist_rowcache_summary +dba_hist_rsrc_consumer_group +dba_hist_rsrc_plan +dba_hist_rule_set +dba_hist_seg_stat +dba_hist_seg_stat_obj +dba_hist_service_name +dba_hist_service_stat +dba_hist_service_wait_class +dba_hist_sess_time_stats +dba_hist_sessmetric_history +dba_hist_sga +dba_hist_sga_target_advice +dba_hist_sgastat +dba_hist_shared_pool_advice +dba_hist_shared_server_summary +dba_hist_snap_error +dba_hist_snapshot +dba_hist_sql_bind_metadata +dba_hist_sql_plan +dba_hist_sql_summary +dba_hist_sql_workarea_hstgrm +dba_hist_sqlbind +dba_hist_sqlcommand_name +dba_hist_sqlstat +dba_hist_sqltext +dba_hist_stat_name +dba_hist_streams_apply_sum +dba_hist_streams_capture +dba_hist_streams_pool_advice +dba_hist_sys_time_model +dba_hist_sysmetric_history +dba_hist_sysmetric_summary +dba_hist_sysstat +dba_hist_system_event +dba_hist_tablespace_stat +dba_hist_tbspc_space_usage +dba_hist_tempfile +dba_hist_tempstatxs +dba_hist_thread +dba_hist_toplevelcall_name +dba_hist_undostat +dba_hist_waitclassmet_history +dba_hist_waitstat +dba_hist_wr_control +dba_histograms +dba_identifiers +dba_ind_columns +dba_ind_expressions +dba_ind_partitions +dba_ind_pending_stats +dba_ind_statistics +dba_ind_subpartitions +dba_indexes +dba_indextype_arraytypes +dba_indextype_comments +dba_indextype_operators +dba_indextypes +dba_internal_triggers +dba_java_arguments +dba_java_classes +dba_java_compiler_options +dba_java_derivations +dba_java_fields +dba_java_implements +dba_java_inners +dba_java_layouts +dba_java_methods +dba_java_ncomps +dba_java_policy +dba_java_resolvers +dba_java_throws +dba_jobs +dba_jobs_running +dba_join_ind_columns +dba_kgllock +dba_libraries +dba_lmt_free_space +dba_lmt_used_extents +dba_lob_partitions +dba_lob_subpartitions +dba_lob_templates +dba_lobs +dba_lock +dba_lock_internal +dba_locks +dba_log_group_columns +dba_log_groups +dba_logmnr_log +dba_logmnr_purged_log +dba_logmnr_session +dba_logstdby_events +dba_logstdby_history +dba_logstdby_log +dba_logstdby_not_unique +dba_logstdby_parameters +dba_logstdby_progress +dba_logstdby_skip +dba_logstdby_skip_transaction +dba_logstdby_unsupported +dba_logstdby_unsupported_table +dba_measure_folder_contents +dba_measure_folders +dba_method_params +dba_method_results +dba_mining_model_attributes +dba_mining_model_settings +dba_mining_models +dba_mview_aggregates +dba_mview_analysis +dba_mview_comments +dba_mview_detail_partition +dba_mview_detail_relations +dba_mview_detail_subpartition +dba_mview_joins +dba_mview_keys +dba_mview_log_filter_cols +dba_mview_logs +dba_mview_refresh_times +dba_mviews +dba_nested_table_cols +dba_nested_tables +dba_network_acl_privileges +dba_network_acls +dba_obj_audit_opts +dba_obj_colattrs +dba_object_size +dba_object_tables +dba_objects +dba_objects_ae +dba_opancillary +dba_oparguments +dba_opbindings +dba_operator_comments +dba_operators +dba_optstat_operations +dba_orphan_key_table +dba_outline_hints +dba_outlines +dba_outstanding_alerts +dba_parallel_execute_chunks +dba_parallel_execute_tasks +dba_part_col_statistics +dba_part_histograms +dba_part_indexes +dba_part_key_columns +dba_part_lobs +dba_part_tables +dba_partial_drop_tabs +dba_pending_conv_tables +dba_pending_transactions +dba_plsql_object_settings +dba_policies +dba_policy_contexts +dba_policy_groups +dba_priv_audit_opts +dba_procedures +dba_profiles +dba_propagation +dba_proxies +dba_published_columns +dba_queue_schedules +dba_queue_subscribers +dba_queue_tables +dba_queues +dba_rchild +dba_recoverable_script +dba_recoverable_script_blocks +dba_recoverable_script_errors +dba_recoverable_script_hist +dba_recoverable_script_params +dba_recyclebin +dba_redefinition_errors +dba_redefinition_objects +dba_refresh +dba_refresh_children +dba_refs +dba_registered_archived_log +dba_registered_mview_groups +dba_registered_mviews +dba_registry +dba_registry_hierarchy +dba_registry_history +dba_registry_log +dba_repair_table +dba_resource_incarnations +dba_resumable +dba_rewrite_equivalences +dba_rgroup +dba_role_privs +dba_roles +dba_rollback_segs +dba_rsrc_categories +dba_rsrc_consumer_group_privs +dba_rsrc_consumer_groups +dba_rsrc_group_mappings +dba_rsrc_io_calibrate +dba_rsrc_manager_system_privs +dba_rsrc_mapping_priority +dba_rsrc_plan_directives +dba_rsrc_plans +dba_rule_set_rules +dba_rule_sets +dba_rules +dba_scheduler_chain_rules +dba_scheduler_chain_steps +dba_scheduler_chains +dba_scheduler_credentials +dba_scheduler_db_dests +dba_scheduler_dests +dba_scheduler_external_dests +dba_scheduler_file_watchers +dba_scheduler_global_attribute +dba_scheduler_group_members +dba_scheduler_groups +dba_scheduler_job_args +dba_scheduler_job_classes +dba_scheduler_job_dests +dba_scheduler_job_log +dba_scheduler_job_roles +dba_scheduler_job_run_details +dba_scheduler_jobs +dba_scheduler_notifications +dba_scheduler_program_args +dba_scheduler_programs +dba_scheduler_remote_databases +dba_scheduler_remote_jobstate +dba_scheduler_running_chains +dba_scheduler_running_jobs +dba_scheduler_schedules +dba_scheduler_window_details +dba_scheduler_window_groups +dba_scheduler_window_log +dba_scheduler_windows +dba_scheduler_wingroup_members +dba_sec_relevant_cols +dba_secondary_objects +dba_segments +dba_segments_old +dba_sequences +dba_server_registry +dba_services +dba_source +dba_source_ae +dba_source_tables +dba_sql_management_config +dba_sql_patches +dba_sql_plan_baselines +dba_sql_profiles +dba_sqlj_type_attrs +dba_sqlj_type_methods +dba_sqlj_types +dba_sqlset +dba_sqlset_binds +dba_sqlset_plans +dba_sqlset_references +dba_sqlset_statements +dba_sqltune_binds +dba_sqltune_plans +dba_sqltune_rationale_plan +dba_sqltune_statistics +dba_sscr_capture +dba_sscr_restore +dba_stat_extensions +dba_stmt_audit_opts +dba_stored_settings +dba_streams_add_column +dba_streams_administrator +dba_streams_columns +dba_streams_delete_column +dba_streams_global_rules +dba_streams_keep_columns +dba_streams_message_consumers +dba_streams_message_rules +dba_streams_newly_supported +dba_streams_rename_column +dba_streams_rename_schema +dba_streams_rename_table +dba_streams_rules +dba_streams_schema_rules +dba_streams_split_merge +dba_streams_split_merge_hist +dba_streams_stmt_handlers +dba_streams_stmts +dba_streams_table_rules +dba_streams_tp_component +dba_streams_tp_component_link +dba_streams_tp_component_stat +dba_streams_tp_database +dba_streams_tp_path_bottleneck +dba_streams_tp_path_stat +dba_streams_transform_function +dba_streams_transformations +dba_streams_unsupported +dba_subpart_col_statistics +dba_subpart_histograms +dba_subpart_key_columns +dba_subpartition_templates +dba_subscr_registrations +dba_subscribed_columns +dba_subscribed_tables +dba_subscriptions +dba_sync_capture +dba_sync_capture_prepared_tabs +dba_sync_capture_tables +dba_synonyms +dba_sys_privs +dba_tab_col_statistics +dba_tab_cols +dba_tab_columns +dba_tab_comments +dba_tab_histgrm_pending_stats +dba_tab_histograms +dba_tab_modifications +dba_tab_partitions +dba_tab_pending_stats +dba_tab_privs +dba_tab_statistics +dba_tab_stat_prefs +dba_tab_stats_history +dba_tab_subpartitions +dba_tables +dba_tablespace_groups +dba_tablespace_thresholds +dba_tablespace_usage_metrics +dba_tablespaces +dba_temp_files +dba_temp_free_space +dba_thresholds +dba_transformations +dba_trigger_cols +dba_trigger_ordering +dba_triggers +dba_ts_quotas +dba_tsm_destination +dba_tsm_source +dba_tstz_tab_cols +dba_tstz_tables +dba_tune_mview +dba_type_attrs +dba_type_methods +dba_type_versions +dba_types +dba_undo_extents +dba_unused_col_tabs +dba_updatable_columns +dba_users +dba_users_with_defpwd +dba_ustats +dba_varrays +dba_views +dba_views_ae +dba_waiters +dba_wallet_acls +dba_warning_settings +dba_workload_captures +dba_workload_connection_map +dba_workload_filters +dba_workload_replay_divergence +dba_workload_replays +dba_xml_indexes +dba_xml_schemas +dba_xml_tab_cols +dba_xml_tables +dba_xml_view_cols +dba_xml_views +dba_xstream_administrator +dba_xstream_inbound +dba_xstream_inbound_progress +dba_xstream_out_support_mode +dba_xstream_outbound +dba_xstream_outbound_progress +dba_xstream_rules +dbfs_content +dbfs_content_properties +dbms_alert_info +dbms_lock_allocated +deptree +dict +dict_columns +dictionary +dm_user_models +document_links +error_size +exceptions +flashback_transaction_query +global_name +hs_all_caps +hs_all_dd +hs_all_inits +hs_base_caps +hs_base_dd +hs_class_caps +hs_class_dd +hs_class_init +hs_fds_class +hs_fds_inst +hs_inst_caps +hs_inst_dd +hs_inst_init +ideptree +ind +index_histogram +index_stats +logstdby_unsupported_tables +map_object +nls_database_parameters +nls_instance_parameters +nls_session_parameters +obj +path_view +plan_table +pluggable_set_check +product_component_version +proxy_users +pstubtbl +public_dependency +publicsyn +queue_privileges +recyclebin +report_components +report_files +report_formats +resource_cost +resource_map +resource_view +role_role_privs +role_sys_privs +role_tab_privs +scheduler_batch_errors +seq +session_context +session_privs +session_roles +source_size +stmt_audit_option_map +syn +synonyms +sys_objects +syscatalog +sysfiles +syssegobj +system_privilege_map +tab +table_privilege_map +tabquotas +tabs +trusted_servers +ts_pitr_check +ts_pitr_objects_to_be_dropped +uni_pluggable_set_check +user_addm_fdg_breakdown +user_addm_findings +user_addm_instances +user_addm_tasks +user_advisor_actions +user_advisor_dir_task_inst +user_advisor_exec_parameters +user_advisor_executions +user_advisor_fdg_breakdown +user_advisor_findings +user_advisor_journal +user_advisor_log +user_advisor_objects +user_advisor_parameters +user_advisor_rationale +user_advisor_recommendations +user_advisor_sqla_rec_sum +user_advisor_sqla_tables +user_advisor_sqla_wk_map +user_advisor_sqla_wk_stmts +user_advisor_sqlplans +user_advisor_sqlstats +user_advisor_sqlw_journal +user_advisor_sqlw_parameters +user_advisor_sqlw_stmts +user_advisor_sqlw_sum +user_advisor_sqlw_tables +user_advisor_sqlw_templates +user_advisor_tasks +user_advisor_templates +user_all_tables +user_aq_agent_privs +user_arguments +user_assemblies +user_associations +user_attribute_transformations +user_audit_object +user_audit_policies +user_audit_policy_columns +user_audit_session +user_audit_statement +user_audit_trail +user_aw_ps +user_aws +user_base_table_mviews +user_catalog +user_change_notification_regs +user_clu_columns +user_cluster_hash_expressions +user_clusters +user_col_comments +user_col_pending_stats +user_col_privs +user_col_privs_made +user_col_privs_recd +user_coll_types +user_comparison +user_comparison_columns +user_comparison_row_dif +user_comparison_scan +user_comparison_scan_values +user_cons_columns +user_cons_obj_columns +user_constraints +user_cq_notification_queries +user_cube_attr_visibility +user_cube_attributes +user_cube_build_processes +user_cube_calculated_members +user_cube_dim_levels +user_cube_dim_models +user_cube_dim_view_columns +user_cube_dim_views +user_cube_dimensionality +user_cube_dimensions +user_cube_hier_levels +user_cube_hier_view_columns +user_cube_hier_views +user_cube_hierarchies +user_cube_measures +user_cube_view_columns +user_cube_views +user_cubes +user_datapump_jobs +user_db_links +user_dbfs_hs_files +user_dependencies +user_dim_attributes +user_dim_child_of +user_dim_hierarchies +user_dim_join_key +user_dim_level_key +user_dim_levels +user_dimensions +user_editioning_view_cols +user_editioning_view_cols_ae +user_editioning_views +user_editioning_views_ae +user_encrypted_columns +user_epg_dad_authorization +user_errors +user_errors_ae +user_evaluation_context_tables +user_evaluation_context_vars +user_evaluation_contexts +user_extents +user_external_locations +user_external_tables +user_file_group_export_info +user_file_group_files +user_file_group_tables +user_file_group_tablespaces +user_file_group_versions +user_file_groups +user_flashback_archive +user_flashback_archive_tables +user_flashback_txn_report +user_flashback_txn_state +user_free_space +user_histograms +user_identifiers +user_ind_columns +user_ind_expressions +user_ind_partitions +user_ind_pending_stats +user_ind_statistics +user_ind_subpartitions +user_indexes +user_indextype_arraytypes +user_indextype_comments +user_indextype_operators +user_indextypes +user_internal_triggers +user_java_arguments +user_java_classes +user_java_compiler_options +user_java_derivations +user_java_fields +user_java_implements +user_java_inners +user_java_layouts +user_java_methods +user_java_ncomps +user_java_policy +user_java_resolvers +user_java_throws +user_jobs +user_join_ind_columns +user_libraries +user_lob_partitions +user_lob_subpartitions +user_lob_templates +user_lobs +user_log_group_columns +user_log_groups +user_measure_folder_contents +user_measure_folders +user_method_params +user_method_results +user_mining_model_attributes +user_mining_model_settings +user_mining_models +user_mview_aggregates +user_mview_analysis +user_mview_comments +user_mview_detail_partition +user_mview_detail_relations +user_mview_detail_subpartition +user_mview_joins +user_mview_keys +user_mview_logs +user_mview_refresh_times +user_mviews +user_nested_table_cols +user_nested_tables +user_network_acl_privileges +user_obj_audit_opts +user_obj_colattrs +user_object_size +user_object_tables +user_objects +user_objects_ae +user_opancillary +user_oparguments +user_opbindings +user_operator_comments +user_operators +user_outline_hints +user_outlines +user_parallel_execute_chunks +user_parallel_execute_tasks +user_part_col_statistics +user_part_histograms +user_part_indexes +user_part_key_columns +user_part_lobs +user_part_tables +user_partial_drop_tabs +user_password_limits +user_pending_conv_tables +user_plsql_object_settings +user_policies +user_policy_contexts +user_policy_groups +user_procedures +user_proxies +user_published_columns +user_queue_schedules +user_queue_subscribers +user_queue_tables +user_queues +user_recyclebin +user_refresh +user_refresh_children +user_refs +user_registered_mviews +user_registry +user_resource_limits +user_resumable +user_rewrite_equivalences +user_role_privs +user_rsrc_consumer_group_privs +user_rsrc_manager_system_privs +user_rule_set_rules +user_rule_sets +user_rules +user_scheduler_chain_rules +user_scheduler_chain_steps +user_scheduler_chains +user_scheduler_credentials +user_scheduler_db_dests +user_scheduler_dests +user_scheduler_file_watchers +user_scheduler_group_members +user_scheduler_groups +user_scheduler_job_args +user_scheduler_job_dests +user_scheduler_job_log +user_scheduler_job_run_details +user_scheduler_jobs +user_scheduler_notifications +user_scheduler_program_args +user_scheduler_programs +user_scheduler_remote_jobstate +user_scheduler_running_chains +user_scheduler_running_jobs +user_scheduler_schedules +user_sec_relevant_cols +user_secondary_objects +user_segments +user_sequences +user_source +user_source_ae +user_source_tables +user_sqlj_type_attrs +user_sqlj_type_methods +user_sqlj_types +user_sqlset +user_sqlset_binds +user_sqlset_plans +user_sqlset_references +user_sqlset_statements +user_sqltune_binds +user_sqltune_plans +user_sqltune_rationale_plan +user_sqltune_statistics +user_stat_extensions +user_stored_settings +user_subpart_col_statistics +user_subpart_histograms +user_subpart_key_columns +user_subpartition_templates +user_subscr_registrations +user_subscribed_columns +user_subscribed_tables +user_subscriptions +user_synonyms +user_sys_privs +user_tab_col_statistics +user_tab_cols +user_tab_columns +user_tab_comments +user_tab_histgrm_pending_stats +user_tab_histograms +user_tab_modifications +user_tab_partitions +user_tab_pending_stats +user_tab_privs +user_tab_privs_made +user_tab_privs_recd +user_tab_stat_prefs +user_tab_statistics +user_tab_stats_history +user_tab_subpartitions +user_tables +user_tablespaces +user_transformations +user_trigger_cols +user_trigger_ordering +user_triggers +user_ts_quotas +user_tstz_tab_cols +user_tstz_tables +user_tune_mview +user_type_attrs +user_type_methods +user_type_versions +user_types +user_unused_col_tabs +user_updatable_columns +user_users +user_ustats +user_varrays +user_views +user_views_ae +user_warning_settings +user_xml_indexes +user_xml_schemas +user_xml_tab_cols +user_xml_tables +user_xml_view_cols +user_xml_views +xs_session_roles \ No newline at end of file diff --git a/src/test/java/com/alibaba/druid/bvt/utils/OracleUtilsTest.java b/src/test/java/com/alibaba/druid/bvt/utils/OracleUtilsTest.java index 637bac5bdd..ba1ec1a037 100644 --- a/src/test/java/com/alibaba/druid/bvt/utils/OracleUtilsTest.java +++ b/src/test/java/com/alibaba/druid/bvt/utils/OracleUtilsTest.java @@ -11,5 +11,9 @@ public class OracleUtilsTest extends TestCase { assertTrue(OracleUtils.isBuiltinFunction("nvl")); assertTrue(OracleUtils.isBuiltinFunction("NVL")); assertFalse(OracleUtils.isBuiltinFunction("xxx_nvl")); + + assertTrue(OracleUtils.isBuiltinTable("user_ts_quotas")); + assertTrue(OracleUtils.isBuiltinTable("user_TS_quotas")); + assertFalse(OracleUtils.isBuiltinTable("user_TS_quotas_xxxxxxxxxxxx")); } }