mirror of
https://github.com/HeidiSQL/HeidiSQL.git
synced 2025-08-06 18:24:26 +08:00
Remove TServerVariable.VarType property, and detect that by only examining the value. Fetch list of variables from a more complete documentation table which also reveals their read/write state. Also, paint variable values in data type colors.
This commit is contained in:
@ -1,285 +1,507 @@
|
|||||||
<?php
|
<?php
|
||||||
$vars = 'auto_increment_increment numeric GLOBAL | SESSION
|
$vars = 'auto_increment_increment Yes Yes Yes Both Yes
|
||||||
auto_increment_offset numeric GLOBAL | SESSION
|
auto_increment_offset Yes Yes Yes Both Yes
|
||||||
autocommit boolean GLOBAL | SESSION
|
autocommit Yes Yes Yes Both Yes
|
||||||
automatic_sp_privileges boolean GLOBAL
|
automatic_sp_privileges Yes Global Yes
|
||||||
big_tables boolean GLOBAL | SESSION
|
back_log Yes Yes Yes Global No
|
||||||
binlog_cache_size numeric GLOBAL
|
basedir Yes Yes Yes Global No
|
||||||
binlog_checksum string GLOBAL
|
big-tables Yes Yes Yes
|
||||||
binlog_direct_non_transactional_updates boolean GLOBAL | SESSION
|
- Variable: big_tables Yes Both Yes
|
||||||
binlog_format enumeration GLOBAL | SESSION
|
bind-address Yes Yes Yes Global No
|
||||||
binlog_row_image=image_type enumeration GLOBAL | SESSION
|
binlog_cache_size Yes Yes Yes Global Yes
|
||||||
binlog_rows_query_log_events boolean GLOBAL | SESSION
|
binlog_checksum Yes Global Yes
|
||||||
binlog_stmt_cache_size numeric GLOBAL
|
binlog_direct_non_transactional_updates Yes Yes Yes Both Yes
|
||||||
bulk_insert_buffer_size numeric GLOBAL | SESSION
|
binlog-format Yes Yes Yes
|
||||||
character_set_client string GLOBAL | SESSION
|
- Variable: binlog_format Yes Both Yes
|
||||||
character_set_connection string GLOBAL | SESSION
|
binlog_row_image Yes Yes Both Yes
|
||||||
character_set_database string GLOBAL | SESSION
|
binlog_stmt_cache_size Yes Yes Yes Global Yes
|
||||||
character_set_filesystem string GLOBAL | SESSION
|
bulk_insert_buffer_size Yes Yes Yes Both Yes
|
||||||
character_set_results string GLOBAL | SESSION
|
character_set_client Yes Both Yes
|
||||||
character_set_server string GLOBAL | SESSION
|
character_set_connection Yes Both Yes
|
||||||
collation_connection string GLOBAL | SESSION
|
character_set_database[a] Yes Both Yes
|
||||||
collation_database string GLOBAL | SESSION
|
character-set-filesystem Yes Yes Yes
|
||||||
collation_server string GLOBAL | SESSION
|
- Variable: character_set_filesystem Yes Both Yes
|
||||||
completion_type numeric GLOBAL | SESSION
|
character_set_results Yes Both Yes
|
||||||
concurrent_insert boolean GLOBAL
|
character-set-server Yes Yes Yes
|
||||||
connect_timeout numeric GLOBAL
|
- Variable: character_set_server Yes Both Yes
|
||||||
debug string GLOBAL | SESSION
|
character_set_system Yes Global No
|
||||||
debug_sync string SESSION
|
character-sets-dir Yes Yes No
|
||||||
default_storage_engine enumeration GLOBAL | SESSION
|
- Variable: character_sets_dir Yes Global No
|
||||||
default_tmp_storage_engine enumeration GLOBAL | SESSION
|
collation_connection Yes Both Yes
|
||||||
default_week_format numeric GLOBAL | SESSION
|
collation_database[b] Yes Both Yes
|
||||||
delay_key_write enumeration GLOBAL
|
collation-server Yes Yes Yes
|
||||||
delayed_insert_limit numeric GLOBAL
|
- Variable: collation_server Yes Both Yes
|
||||||
delayed_insert_timeout numeric GLOBAL
|
completion_type Yes Yes Yes Both Yes
|
||||||
delayed_queue_size numeric GLOBAL
|
concurrent_insert Yes Yes Yes Global Yes
|
||||||
div_precision_increment numeric GLOBAL | SESSION
|
connect_timeout Yes Yes Yes Global Yes
|
||||||
end_markers_in_json boolean GLOBAL | SESSION
|
datadir Yes Yes Yes Global No
|
||||||
engine_condition_pushdown boolean GLOBAL | SESSION
|
date_format Yes Global No
|
||||||
eq_range_index_dive_limit numeric GLOBAL | SESSION
|
datetime_format Yes Global No
|
||||||
event_scheduler enumeration GLOBAL
|
debug Yes Yes Yes Both Yes
|
||||||
expire_logs_days numeric GLOBAL
|
debug_sync Yes Session Yes
|
||||||
flush boolean GLOBAL
|
default-storage-engine Yes Yes Yes
|
||||||
flush_time numeric GLOBAL
|
- Variable: default_storage_engine Yes Both Yes
|
||||||
foreign_key_checks boolean GLOBAL | SESSION
|
default_tmp_storage_engine Yes Yes Yes Both Yes
|
||||||
ft_boolean_syntax string GLOBAL
|
default_week_format Yes Yes Yes Both Yes
|
||||||
general_log boolean GLOBAL
|
delay-key-write Yes Yes Yes
|
||||||
general_log_file filename GLOBAL
|
- Variable: delay_key_write Yes Global Yes
|
||||||
group_concat_max_len numeric GLOBAL | SESSION
|
delayed_insert_limit Yes Yes Yes Global Yes
|
||||||
gtid_next enumeration SESSION
|
delayed_insert_timeout Yes Yes Yes Global Yes
|
||||||
host_cache_size numeric GLOBAL
|
delayed_queue_size Yes Yes Yes Global Yes
|
||||||
identity numeric SESSION
|
disable_gtid_unsafe_statements Yes Yes Yes Global No
|
||||||
init_connect string GLOBAL
|
disable-gtid-unsafe-statements Yes Yes Yes Global No
|
||||||
init_slave string GLOBAL
|
div_precision_increment Yes Yes Yes Both Yes
|
||||||
innodb_adaptive_flushing boolean GLOBAL
|
end_markers_in_json Yes Both Yes
|
||||||
innodb_adaptive_hash_index boolean GLOBAL
|
engine-condition-pushdown Yes Yes Yes
|
||||||
innodb_adaptive_max_sleep_delay numeric GLOBAL
|
- Variable: engine_condition_pushdown Yes Both Yes
|
||||||
innodb_analyze_is_persistent boolean GLOBAL
|
eq_range_index_dive_limit Yes Yes Yes Both Yes
|
||||||
innodb_api_enable_binlog boolean GLOBAL
|
error_count Yes Session No
|
||||||
innodb_api_enable_mdl boolean GLOBAL
|
event-scheduler Yes Yes Yes
|
||||||
innodb_api_trx_level boolean GLOBAL
|
- Variable: event_scheduler Yes Global Yes
|
||||||
innodb_autoextend_increment numeric GLOBAL
|
expire_logs_days Yes Yes Yes Global Yes
|
||||||
innodb_buffer_pool_dump_at_shutdown boolean GLOBAL
|
external_user Yes Session No
|
||||||
innodb_buffer_pool_dump_now boolean GLOBAL
|
flush Yes Yes Yes Global Yes
|
||||||
innodb_buffer_pool_filename boolean GLOBAL
|
flush_time Yes Yes Yes Global Yes
|
||||||
innodb_buffer_pool_load_abort boolean GLOBAL
|
foreign_key_checks Yes Both Yes
|
||||||
innodb_buffer_pool_load_at_startup boolean GLOBAL
|
ft_boolean_syntax Yes Yes Yes Global Yes
|
||||||
innodb_buffer_pool_load_now boolean GLOBAL
|
ft_max_word_len Yes Yes Yes Global No
|
||||||
innodb_change_buffer_max_size numeric GLOBAL
|
ft_min_word_len Yes Yes Yes Global No
|
||||||
innodb_change_buffering enumeration GLOBAL
|
ft_query_expansion_limit Yes Yes Yes Global No
|
||||||
innodb_checksum_algorithm enumeration GLOBAL
|
ft_stopword_file Yes Yes Yes Global No
|
||||||
innodb_commit_concurrency numeric GLOBAL
|
general-log Yes Yes Yes
|
||||||
innodb_concurrency_tickets numeric GLOBAL
|
- Variable: general_log Yes Global Yes
|
||||||
innodb_fast_shutdown numeric GLOBAL
|
general_log_file Yes Yes Yes Global Yes
|
||||||
innodb_file_format string GLOBAL
|
group_concat_max_len Yes Yes Yes Both Yes
|
||||||
innodb_file_format_max string GLOBAL
|
gtid_done Yes Both No
|
||||||
innodb_file_per_table boolean GLOBAL
|
gtid_lost Yes Global No
|
||||||
innodb_flush_log_at_trx_commit enumeration GLOBAL
|
gtid_mode Yes Global No
|
||||||
innodb_flush_neighbors boolean GLOBAL
|
gtid-mode Yes Yes No
|
||||||
innodb_ft_aux_table string GLOBAL
|
- Variable: gtid_mode Yes Global No
|
||||||
innodb_ft_cache_size numeric GLOBAL
|
gtid_next Yes Session Yes
|
||||||
innodb_ft_enable_stopword boolean GLOBAL
|
gtid_owned Yes Both No
|
||||||
innodb_ft_max_token_size numeric GLOBAL
|
have_compress Yes Global No
|
||||||
innodb_ft_min_token_size numeric GLOBAL
|
have_crypt Yes Global No
|
||||||
innodb_ft_num_word_optimize numeric GLOBAL
|
have_csv Yes Global No
|
||||||
innodb_ft_server_stopword_table string GLOBAL
|
have_dynamic_loading Yes Global No
|
||||||
innodb_ft_sort_pll_degree numeric GLOBAL
|
have_geometry Yes Global No
|
||||||
innodb_ft_user_stopword_table string GLOBAL
|
have_innodb Yes Global No
|
||||||
innodb_io_capacity numeric GLOBAL
|
have_ndbcluster Yes Global No
|
||||||
innodb_large_prefix boolean GLOBAL
|
have_openssl Yes Global No
|
||||||
innodb_lock_wait_timeout numeric GLOBAL | SESSION
|
have_partitioning Yes Global No
|
||||||
innodb_lru_scan_depth numeric GLOBAL
|
have_profiling Yes Global No
|
||||||
innodb_max_dirty_pages_pct numeric GLOBAL
|
have_query_cache Yes Global No
|
||||||
innodb_max_purge_lag numeric GLOBAL
|
have_rtree_keys Yes Global No
|
||||||
innodb_monitor_disable string GLOBAL
|
have_ssl Yes Global No
|
||||||
innodb_monitor_enable string GLOBAL
|
have_symlink Yes Global No
|
||||||
innodb_monitor_reset string GLOBAL
|
host_cache_size Yes Yes Yes Global Yes
|
||||||
innodb_monitor_reset_all string GLOBAL
|
hostname Yes Global No
|
||||||
innodb_old_blocks_pct numeric GLOBAL
|
identity Yes Session Yes
|
||||||
innodb_old_blocks_time numeric GLOBAL
|
ignore-builtin-innodb Yes Yes No
|
||||||
innodb_optimize_fulltext_only boolean GLOBAL
|
- Variable: ignore_builtin_innodb Yes Global No
|
||||||
innodb_print_all_deadlocks boolean GLOBAL
|
init_connect Yes Yes Yes Global Yes
|
||||||
innodb_random_read_ahead boolean GLOBAL
|
init-file Yes Yes No
|
||||||
innodb_read_ahead_threshold numeric GLOBAL
|
- Variable: init_file Yes Global No
|
||||||
innodb_replication_delay numeric GLOBAL
|
init_slave Yes Yes Yes Global Yes
|
||||||
innodb_rollback_segments numeric GLOBAL
|
innodb_adaptive_flushing Yes Yes Yes Global Yes
|
||||||
innodb_sort_buffer_size numeric GLOBAL
|
innodb_adaptive_hash_index Yes Yes Yes Global Yes
|
||||||
innodb_spin_wait_delay numeric GLOBAL
|
innodb_adaptive_max_sleep_delay Yes Yes Yes Global Yes
|
||||||
innodb_stats_method enumeration GLOBAL | SESSION
|
innodb_additional_mem_pool_size Yes Yes Yes Global No
|
||||||
innodb_stats_on_metadata boolean GLOBAL
|
innodb_analyze_is_persistent Yes Yes Yes Global Yes
|
||||||
innodb_stats_persistent_sample_pages numeric GLOBAL
|
innodb_api_enable_binlog Yes Yes Yes Global Yes
|
||||||
innodb_stats_sample_pages numeric GLOBAL
|
innodb_api_enable_mdl Yes Yes Yes Global Yes
|
||||||
innodb_stats_transient_sample_pages numeric GLOBAL
|
innodb_api_trx_level Yes Yes Yes Global Yes
|
||||||
innodb_strict_mode boolean GLOBAL | SESSION
|
innodb_autoextend_increment Yes Yes Yes Global Yes
|
||||||
innodb_support_xa boolean GLOBAL | SESSION
|
innodb_autoinc_lock_mode Yes Yes Yes Global No
|
||||||
innodb_sync_spin_loops numeric GLOBAL
|
innodb_buffer_pool_dump_at_shutdown Yes Yes Yes Global Yes
|
||||||
innodb_table_locks boolean GLOBAL | SESSION
|
innodb_buffer_pool_dump_now Yes Yes Yes Global Yes
|
||||||
innodb_thread_concurrency numeric GLOBAL
|
innodb_buffer_pool_filename Yes Yes Yes Global Yes
|
||||||
innodb_thread_sleep_delay numeric GLOBAL
|
innodb_buffer_pool_instances Yes Yes Yes Global No
|
||||||
innodb_undo_directory string GLOBAL
|
innodb_buffer_pool_load_abort Yes Yes Yes Global Yes
|
||||||
innodb_undo_logs numeric GLOBAL
|
innodb_buffer_pool_load_at_startup Yes Yes Yes Global Yes
|
||||||
innodb_undo_tablespaces numeric GLOBAL
|
innodb_buffer_pool_load_now Yes Yes Yes Global Yes
|
||||||
insert_id numeric SESSION
|
innodb_buffer_pool_size Yes Yes Yes Global No
|
||||||
interactive_timeout numeric GLOBAL | SESSION
|
innodb_change_buffer_max_size Yes Yes Yes Global Yes
|
||||||
join_buffer_size numeric GLOBAL | SESSION
|
innodb_change_buffering Yes Yes Yes Global Yes
|
||||||
keep_files_on_create boolean GLOBAL | SESSION
|
innodb_checksum_algorithm Yes Yes Yes Global Yes
|
||||||
key_buffer_size numeric GLOBAL
|
innodb_checksums Yes Yes Yes Global No
|
||||||
key_cache_age_threshold numeric GLOBAL
|
innodb_commit_concurrency Yes Yes Yes Global Yes
|
||||||
key_cache_block_size numeric GLOBAL
|
innodb_concurrency_tickets Yes Yes Yes Global Yes
|
||||||
key_cache_division_limit numeric GLOBAL
|
innodb_data_file_path Yes Yes Yes Global No
|
||||||
last_insert_id numeric SESSION
|
innodb_data_home_dir Yes Yes Yes Global No
|
||||||
lc_messages string GLOBAL | SESSION
|
innodb_doublewrite Yes Yes Yes Global No
|
||||||
lc_time_names string GLOBAL | SESSION
|
innodb_fast_shutdown Yes Yes Yes Global Yes
|
||||||
local_infile boolean GLOBAL
|
innodb_file_format Yes Yes Yes Global Yes
|
||||||
lock_wait_timeout numeric GLOBAL | SESSION
|
innodb_file_format_check Yes Yes Yes Global No
|
||||||
log string GLOBAL
|
innodb_file_format_max Yes Yes Yes Global Yes
|
||||||
log_output set GLOBAL
|
innodb_file_per_table Yes Yes Yes Global Yes
|
||||||
log_queries_not_using_indexes boolean GLOBAL
|
innodb_flush_log_at_trx_commit Yes Yes Yes Global Yes
|
||||||
log_slow_queries boolean GLOBAL
|
innodb_flush_method Yes Yes Yes Global No
|
||||||
log_throttle_queries_not_using_indexes numeric GLOBAL
|
innodb_flush_neighbors Yes Yes Yes Global Yes
|
||||||
log_warnings numeric GLOBAL
|
innodb_force_load_corrupted Yes Yes Yes Global No
|
||||||
long_query_time numeric GLOBAL | SESSION
|
innodb_force_recovery Yes Yes Yes Global No
|
||||||
low_priority_updates boolean GLOBAL | SESSION
|
innodb_ft_aux_table Yes Yes Yes Global Yes
|
||||||
master_verify_checksum boolean GLOBAL
|
innodb_ft_cache_size Yes Yes Yes Global Yes
|
||||||
max_allowed_packet numeric GLOBAL
|
innodb_ft_enable_stopword Yes Yes Yes Global Yes
|
||||||
max_binlog_cache_size numeric GLOBAL
|
innodb_ft_max_token_size Yes Yes Yes Global Yes
|
||||||
max_binlog_size numeric GLOBAL
|
innodb_ft_min_token_size Yes Yes Yes Global Yes
|
||||||
max_binlog_stmt_cache_size numeric GLOBAL
|
innodb_ft_num_word_optimize Yes Yes Yes Global Yes
|
||||||
max_connect_errors numeric GLOBAL
|
innodb_ft_server_stopword_table Yes Yes Yes Global Yes
|
||||||
max_connections numeric GLOBAL
|
innodb_ft_sort_pll_degree Yes Yes Yes Global Yes
|
||||||
max_delayed_threads numeric GLOBAL | SESSION
|
innodb_ft_user_stopword_table Yes Yes Yes Global Yes
|
||||||
max_error_count numeric GLOBAL | SESSION
|
innodb_io_capacity Yes Yes Yes Global Yes
|
||||||
max_heap_table_size numeric GLOBAL | SESSION
|
innodb_large_prefix Yes Yes Yes Global Yes
|
||||||
max_insert_delayed_threads numeric GLOBAL | SESSION
|
innodb_lock_wait_timeout Yes Yes Yes Both Yes
|
||||||
max_join_size numeric GLOBAL | SESSION
|
innodb_locks_unsafe_for_binlog Yes Yes Yes Global No
|
||||||
max_length_for_sort_data numeric GLOBAL | SESSION
|
innodb_log_buffer_size Yes Yes Yes Global No
|
||||||
max_prepared_stmt_count numeric GLOBAL
|
innodb_log_file_size Yes Yes Yes Global No
|
||||||
max_relay_log_size numeric GLOBAL
|
innodb_log_files_in_group Yes Yes Yes Global No
|
||||||
max_seeks_for_key numeric GLOBAL | SESSION
|
innodb_log_group_home_dir Yes Yes Yes Global No
|
||||||
max_sort_length numeric GLOBAL | SESSION
|
innodb_lru_scan_depth Yes Yes Yes Global Yes
|
||||||
max_sp_recursion_depth numeric GLOBAL | SESSION
|
innodb_max_dirty_pages_pct Yes Yes Yes Global Yes
|
||||||
max_tmp_tables numeric GLOBAL | SESSION
|
innodb_max_purge_lag Yes Yes Yes Global Yes
|
||||||
max_user_connections numeric GLOBAL | SESSION
|
innodb_mirrored_log_groups Yes Yes Yes Global No
|
||||||
max_write_lock_count numeric GLOBAL
|
innodb_monitor_disable Yes Yes Yes Global Yes
|
||||||
min_examined_row_limit numeric GLOBAL | SESSION
|
innodb_monitor_enable Yes Yes Yes Global Yes
|
||||||
myisam_data_pointer_size numeric GLOBAL
|
innodb_monitor_reset Yes Yes Yes Global Yes
|
||||||
myisam_max_sort_file_size numeric GLOBAL
|
innodb_monitor_reset_all Yes Yes Yes Global Yes
|
||||||
myisam_repair_threads numeric GLOBAL | SESSION
|
innodb_old_blocks_pct Yes Yes Yes Global Yes
|
||||||
myisam_sort_buffer_size numeric GLOBAL | SESSION
|
innodb_old_blocks_time Yes Yes Yes Global Yes
|
||||||
myisam_stats_method enumeration GLOBAL | SESSION
|
innodb_open_files Yes Yes Yes Global No
|
||||||
myisam_use_mmap boolean GLOBAL
|
innodb_optimize_fulltext_only Yes Yes Yes Global Yes
|
||||||
net_buffer_length numeric GLOBAL | SESSION
|
innodb_page_size Yes Yes Yes Global No
|
||||||
net_read_timeout numeric GLOBAL | SESSION
|
innodb_print_all_deadlocks Yes Yes Yes Global Yes
|
||||||
net_retry_count numeric GLOBAL | SESSION
|
innodb_purge_batch_size Yes Yes Yes Global No
|
||||||
net_write_timeout numeric GLOBAL | SESSION
|
innodb_purge_threads Yes Yes Yes Global No
|
||||||
new boolean GLOBAL | SESSION
|
innodb_random_read_ahead Yes Yes Yes Global Yes
|
||||||
old_alter_table boolean GLOBAL | SESSION
|
innodb_read_ahead_threshold Yes Yes Yes Global Yes
|
||||||
old_passwords boolean GLOBAL | SESSION
|
innodb_read_io_threads Yes Yes Yes Global No
|
||||||
optimizer_join_cache_level numeric GLOBAL | SESSION
|
innodb_replication_delay Yes Yes Yes Global Yes
|
||||||
optimizer_prune_level boolean GLOBAL | SESSION
|
innodb_rollback_on_timeout Yes Yes Yes Global No
|
||||||
optimizer_search_depth numeric GLOBAL | SESSION
|
innodb_rollback_segments Yes Yes Yes Global Yes
|
||||||
optimizer_switch set GLOBAL | SESSION
|
innodb_sort_buffer_size Yes Yes Yes Global Yes
|
||||||
optimizer_trace string GLOBAL | SESSION
|
innodb_spin_wait_delay Yes Yes Yes Global Yes
|
||||||
optimizer_trace_features string GLOBAL | SESSION
|
innodb_stats_method Yes Yes Yes Both Yes
|
||||||
optimizer_trace_limit numeric GLOBAL | SESSION
|
innodb_stats_on_metadata Yes Yes Yes Global Yes
|
||||||
optimizer_trace_max_mem_size numeric GLOBAL | SESSION
|
innodb_stats_persistent_sample_pages Yes Yes Yes Global Yes
|
||||||
optimizer_trace_offset numeric GLOBAL | SESSION
|
innodb_stats_sample_pages Yes Yes Yes Global Yes
|
||||||
preload_buffer_size numeric GLOBAL | SESSION
|
innodb_stats_transient_sample_pages Yes Yes Yes Global Yes
|
||||||
profiling boolean GLOBAL | SESSION
|
innodb_strict_mode Yes Yes Yes Both Yes
|
||||||
profiling_history_size numeric GLOBAL | SESSION
|
innodb_support_xa Yes Yes Yes Both Yes
|
||||||
pseudo_thread_id numeric SESSION
|
innodb_sync_array_size Yes Yes Yes Global No
|
||||||
query_alloc_block_size numeric GLOBAL | SESSION
|
innodb_sync_spin_loops Yes Yes Yes Global Yes
|
||||||
query_cache_limit numeric GLOBAL
|
innodb_table_locks Yes Yes Yes Both Yes
|
||||||
query_cache_min_res_unit numeric GLOBAL
|
innodb_thread_concurrency Yes Yes Yes Global Yes
|
||||||
query_cache_size numeric GLOBAL
|
innodb_thread_sleep_delay Yes Yes Yes Global Yes
|
||||||
query_cache_type enumeration GLOBAL | SESSION
|
innodb_undo_directory Yes Yes Yes Global Yes
|
||||||
query_cache_wlock_invalidate boolean GLOBAL | SESSION
|
innodb_undo_logs Yes Yes Yes Global Yes
|
||||||
query_prealloc_size numeric GLOBAL | SESSION
|
innodb_undo_tablespaces Yes Yes Yes Global Yes
|
||||||
rand_seed1 numeric SESSION
|
innodb_use_native_aio Yes Yes Yes Global No
|
||||||
rand_seed2 numeric SESSION
|
innodb_use_sys_malloc Yes Yes Yes Global No
|
||||||
range_alloc_block_size numeric GLOBAL | SESSION
|
innodb_version Yes Global No
|
||||||
read_buffer_size numeric GLOBAL | SESSION
|
innodb_write_io_threads Yes Yes Yes Global No
|
||||||
read_only boolean GLOBAL
|
insert_id Yes Session Yes
|
||||||
read_rnd_buffer_size numeric GLOBAL | SESSION
|
interactive_timeout Yes Yes Yes Both Yes
|
||||||
relay_log_purge boolean GLOBAL
|
join_buffer_size Yes Yes Yes Both Yes
|
||||||
relay_log_recovery boolean GLOBAL
|
keep_files_on_create Yes Yes Yes Both Yes
|
||||||
rpl_semi_sync_master_enabled boolean GLOBAL
|
key_buffer_size Yes Yes Yes Global Yes
|
||||||
rpl_semi_sync_master_timeout numeric GLOBAL
|
key_cache_age_threshold Yes Yes Yes Global Yes
|
||||||
rpl_semi_sync_master_trace_level numeric GLOBAL
|
key_cache_block_size Yes Yes Yes Global Yes
|
||||||
rpl_semi_sync_master_wait_no_slave boolean GLOBAL
|
key_cache_division_limit Yes Yes Yes Global Yes
|
||||||
rpl_semi_sync_slave_enabled boolean GLOBAL
|
language Yes Yes Yes Global No
|
||||||
rpl_semi_sync_slave_trace_level numeric GLOBAL
|
large_files_support Yes Global No
|
||||||
secure_auth boolean GLOBAL
|
large_page_size Yes Global No
|
||||||
server_id numeric GLOBAL
|
large-pages Yes Yes No
|
||||||
slave_compressed_protocol boolean GLOBAL
|
- Variable: large_pages Yes Global No
|
||||||
slave_exec_mode enumeration GLOBAL
|
last_insert_id Yes Session Yes
|
||||||
slave_net_timeout numeric GLOBAL
|
lc-messages Yes Yes Yes
|
||||||
slave_parallel_workers numeric GLOBAL
|
- Variable: lc_messages Yes Both Yes
|
||||||
slave_sql_verify_checksum boolean GLOBAL
|
lc-messages-dir Yes Yes No
|
||||||
slave_transaction_retries numeric GLOBAL
|
- Variable: lc_messages_dir Yes Global No
|
||||||
slow_launch_time numeric GLOBAL
|
lc_time_names Yes Both Yes
|
||||||
slow_query_log boolean GLOBAL
|
license Yes Global No
|
||||||
slow_query_log_file filename GLOBAL
|
local-infile Yes Yes Yes
|
||||||
sort_buffer_size numeric GLOBAL | SESSION
|
- Variable: local_infile Yes Global Yes
|
||||||
sql_auto_is_null boolean GLOBAL | SESSION
|
lock_wait_timeout Yes Yes Yes Both Yes
|
||||||
sql_big_selects boolean GLOBAL | SESSION
|
locked_in_memory Yes Global No
|
||||||
sql_big_tables boolean GLOBAL | SESSION
|
log Yes Yes Yes Global Yes
|
||||||
sql_buffer_result boolean GLOBAL | SESSION
|
log_bin Yes Global No
|
||||||
sql_log_bin boolean GLOBAL | SESSION
|
log-bin Yes Yes Yes Global No
|
||||||
sql_log_off boolean GLOBAL | SESSION
|
log_bin_basename Yes Global No
|
||||||
sql_low_priority_updates boolean GLOBAL | SESSION
|
log-error Yes Yes No
|
||||||
sql_max_join_size numeric GLOBAL | SESSION
|
- Variable: log_error Yes Global No
|
||||||
sql_mode set GLOBAL | SESSION
|
log-output Yes Yes Yes
|
||||||
sql_notes boolean GLOBAL | SESSION
|
- Variable: log_output Yes Global Yes
|
||||||
sql_quote_show_create boolean GLOBAL | SESSION
|
log-queries-not-using-indexes Yes Yes Yes
|
||||||
sql_safe_updates boolean GLOBAL | SESSION
|
- Variable: log_queries_not_using_indexes Yes Global Yes
|
||||||
sql_select_limit numeric GLOBAL | SESSION
|
log-slave-updates Yes Yes No
|
||||||
sql_slave_skip_counter numeric GLOBAL
|
- Variable: log_slave_updates Yes Global No
|
||||||
sql_warnings boolean GLOBAL | SESSION
|
log-slow-queries Yes Yes Yes
|
||||||
storage_engine enumeration GLOBAL | SESSION
|
- Variable: log_slow_queries Yes Global Yes
|
||||||
stored_program_cache numeric GLOBAL
|
log_throttle_queries_not_using_indexes Yes Global Yes
|
||||||
sync_binlog numeric GLOBAL
|
log-warnings Yes Yes Yes
|
||||||
sync_frm boolean GLOBAL
|
- Variable: log_warnings Yes Global Yes
|
||||||
sync_master_info numeric GLOBAL
|
long_query_time Yes Yes Yes Both Yes
|
||||||
sync_relay_log numeric GLOBAL
|
low-priority-updates Yes Yes Yes
|
||||||
sync_relay_log_info numeric GLOBAL
|
- Variable: low_priority_updates Yes Both Yes
|
||||||
table_definition_cache numeric GLOBAL
|
lower_case_file_system Yes Yes Yes Global No
|
||||||
table_open_cache numeric GLOBAL
|
lower_case_table_names Yes Yes Yes Global No
|
||||||
thread_cache_size numeric GLOBAL
|
master_info_repository Yes Global No
|
||||||
time_zone string GLOBAL | SESSION
|
master_verify_checksum Yes Global Yes
|
||||||
timed_mutexes boolean GLOBAL
|
max_allowed_packet Yes Yes Yes Global Yes
|
||||||
timestamp numeric SESSION
|
max_binlog_cache_size Yes Yes Yes Global Yes
|
||||||
tmp_table_size numeric GLOBAL | SESSION
|
max_binlog_size Yes Yes Yes Global Yes
|
||||||
transaction_alloc_block_size numeric GLOBAL | SESSION
|
max_binlog_stmt_cache_size Yes Yes Yes Global Yes
|
||||||
transaction_prealloc_size numeric GLOBAL | SESSION
|
max_connect_errors Yes Yes Yes Global Yes
|
||||||
tx_isolation enumeration GLOBAL | SESSION
|
max_connections Yes Yes Yes Global Yes
|
||||||
tx_read_only boolean GLOBAL | SESSION
|
max_delayed_threads Yes Yes Yes Both Yes
|
||||||
unique_checks boolean GLOBAL | SESSION
|
max_error_count Yes Yes Yes Both Yes
|
||||||
updatable_views_with_limit boolean GLOBAL | SESSION
|
max_heap_table_size Yes Yes Yes Both Yes
|
||||||
wait_timeout numeric GLOBAL | SESSION';
|
max_insert_delayed_threads Yes Both Yes
|
||||||
|
max_join_size Yes Yes Yes Both Yes
|
||||||
|
max_length_for_sort_data Yes Yes Yes Both Yes
|
||||||
|
max_prepared_stmt_count Yes Yes Yes Global Yes
|
||||||
|
max_relay_log_size Yes Yes Yes Global Yes
|
||||||
|
max_seeks_for_key Yes Yes Yes Both Yes
|
||||||
|
max_sort_length Yes Yes Yes Both Yes
|
||||||
|
max_sp_recursion_depth Yes Yes Yes Both Yes
|
||||||
|
max_tmp_tables Yes Yes Yes Both Yes
|
||||||
|
max_user_connections Yes Yes Yes Both Yes
|
||||||
|
max_write_lock_count Yes Yes Yes Global Yes
|
||||||
|
memlock Yes Yes Yes Global No
|
||||||
|
metadata_locks_cache_size Yes Global No
|
||||||
|
min-examined-row-limit Yes Yes Yes Both Yes
|
||||||
|
myisam_data_pointer_size Yes Yes Yes Global Yes
|
||||||
|
myisam_max_sort_file_size Yes Yes Yes Global Yes
|
||||||
|
myisam_mmap_size Yes Yes Yes Global No
|
||||||
|
myisam_recover_options Yes Global No
|
||||||
|
myisam_repair_threads Yes Yes Yes Both Yes
|
||||||
|
myisam_sort_buffer_size Yes Yes Yes Both Yes
|
||||||
|
myisam_stats_method Yes Yes Yes Both Yes
|
||||||
|
myisam_use_mmap Yes Yes Yes Global Yes
|
||||||
|
named_pipe Yes Global No
|
||||||
|
net_buffer_length Yes Yes Yes Both Yes
|
||||||
|
net_read_timeout Yes Yes Yes Both Yes
|
||||||
|
net_retry_count Yes Yes Yes Both Yes
|
||||||
|
net_write_timeout Yes Yes Yes Both Yes
|
||||||
|
new Yes Yes Yes Both Yes
|
||||||
|
old Yes Yes Yes Global No
|
||||||
|
old-alter-table Yes Yes Yes
|
||||||
|
- Variable: old_alter_table Yes Both Yes
|
||||||
|
old-passwords Yes Yes Yes
|
||||||
|
- Variable: old_passwords Yes Both Yes
|
||||||
|
open-files-limit Yes Yes No
|
||||||
|
- Variable: open_files_limit Yes Global No
|
||||||
|
optimizer_join_cache_level Yes Yes Yes Both Yes
|
||||||
|
optimizer_prune_level Yes Yes Yes Both Yes
|
||||||
|
optimizer_search_depth Yes Yes Yes Both Yes
|
||||||
|
optimizer_switch Yes Yes Yes Both Yes
|
||||||
|
optimizer_trace Yes Both Yes
|
||||||
|
optimizer_trace_features Yes Both Yes
|
||||||
|
optimizer_trace_limit Yes Both Yes
|
||||||
|
optimizer_trace_max_mem_size Yes Both Yes
|
||||||
|
optimizer_trace_offset Yes Both Yes
|
||||||
|
partition Yes Yes No
|
||||||
|
- Variable: have_partitioning Yes Global No
|
||||||
|
performance_schema Yes Yes Yes Global No
|
||||||
|
performance_schema_accounts_size Yes Yes Yes Global No
|
||||||
|
performance_schema_digests_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_stages_history_long_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_stages_history_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_statements_history_long_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_statements_history_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_waits_history_long_size Yes Yes Yes Global No
|
||||||
|
performance_schema_events_waits_history_size Yes Yes Yes Global No
|
||||||
|
performance_schema_hosts_size Yes Yes Yes Global No
|
||||||
|
performance_schema_max_cond_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_cond_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_file_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_file_handles Yes Yes Yes Global No
|
||||||
|
performance_schema_max_file_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_mutex_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_mutex_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_rwlock_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_rwlock_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_socket_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_socket_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_stage_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_statement_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_table_handles Yes Yes Yes Global No
|
||||||
|
performance_schema_max_table_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_max_thread_classes Yes Yes Yes Global No
|
||||||
|
performance_schema_max_thread_instances Yes Yes Yes Global No
|
||||||
|
performance_schema_setup_actors_size Yes Yes Yes Global No
|
||||||
|
performance_schema_setup_objects_size Yes Yes Yes Global No
|
||||||
|
performance_schema_users_size Yes Yes Yes Global No
|
||||||
|
pid-file Yes Yes No
|
||||||
|
- Variable: pid_file Yes Global No
|
||||||
|
plugin_dir Yes Yes Yes Global No
|
||||||
|
port Yes Yes Yes Global No
|
||||||
|
preload_buffer_size Yes Yes Yes Both Yes
|
||||||
|
profiling Yes Both Yes
|
||||||
|
profiling_history_size Yes Yes Yes Both Yes
|
||||||
|
protocol_version Yes Global No
|
||||||
|
proxy_user Yes Session No
|
||||||
|
pseudo_thread_id Yes Session Yes
|
||||||
|
query_alloc_block_size Yes Yes Yes Both Yes
|
||||||
|
query_cache_limit Yes Yes Yes Global Yes
|
||||||
|
query_cache_min_res_unit Yes Yes Yes Global Yes
|
||||||
|
query_cache_size Yes Yes Yes Global Yes
|
||||||
|
query_cache_type Yes Yes Yes Both Yes
|
||||||
|
query_cache_wlock_invalidate Yes Yes Yes Both Yes
|
||||||
|
query_prealloc_size Yes Yes Yes Both Yes
|
||||||
|
rand_seed1 Yes Session Yes
|
||||||
|
rand_seed2 Yes Session Yes
|
||||||
|
range_alloc_block_size Yes Yes Yes Both Yes
|
||||||
|
read_buffer_size Yes Yes Yes Both Yes
|
||||||
|
read_only Yes Yes Yes Global Yes
|
||||||
|
read_rnd_buffer_size Yes Yes Yes Both Yes
|
||||||
|
relay_log_basename Yes Global No
|
||||||
|
relay-log-index Yes Yes No
|
||||||
|
- Variable: relay_log_index Yes Both No
|
||||||
|
relay_log_index Yes Yes Yes Global No
|
||||||
|
relay_log_info_file Yes Yes Yes Global No
|
||||||
|
relay_log_info_repository Yes Global No
|
||||||
|
relay_log_purge Yes Yes Yes Global Yes
|
||||||
|
relay_log_recovery Yes Yes Yes Global Yes
|
||||||
|
relay_log_space_limit Yes Yes Yes Global No
|
||||||
|
report-host Yes Yes No
|
||||||
|
- Variable: report_host Yes Global No
|
||||||
|
report-password Yes Yes No
|
||||||
|
- Variable: report_password Yes Global No
|
||||||
|
report-port Yes Yes No
|
||||||
|
- Variable: report_port Yes Global No
|
||||||
|
report-user Yes Yes No
|
||||||
|
- Variable: report_user Yes Global No
|
||||||
|
rpl_semi_sync_master_enabled Yes Global Yes
|
||||||
|
rpl_semi_sync_master_timeout Yes Global Yes
|
||||||
|
rpl_semi_sync_master_trace_level Yes Global Yes
|
||||||
|
rpl_semi_sync_master_wait_no_slave Yes Global Yes
|
||||||
|
rpl_semi_sync_slave_enabled Yes Global Yes
|
||||||
|
rpl_semi_sync_slave_trace_level Yes Global Yes
|
||||||
|
secure-auth Yes Yes Yes
|
||||||
|
- Variable: secure_auth Yes Global Yes
|
||||||
|
secure-file-priv Yes Yes No
|
||||||
|
- Variable: secure_file_priv Yes Global No
|
||||||
|
server-id Yes Yes Yes
|
||||||
|
- Variable: server_id Yes Global Yes
|
||||||
|
server_uuid Yes Global No
|
||||||
|
shared_memory Yes Global No
|
||||||
|
shared_memory_base_name Yes Global No
|
||||||
|
skip-external-locking Yes Yes No
|
||||||
|
- Variable: skip_external_locking Yes Global No
|
||||||
|
skip-name-resolve Yes Yes No
|
||||||
|
- Variable: skip_name_resolve Yes Global No
|
||||||
|
skip-networking Yes Yes No
|
||||||
|
- Variable: skip_networking Yes Global No
|
||||||
|
skip-show-database Yes Yes No
|
||||||
|
- Variable: skip_show_database Yes Global No
|
||||||
|
slave_compressed_protocol Yes Yes Yes Global Yes
|
||||||
|
slave_exec_mode Yes Global Yes
|
||||||
|
slave-load-tmpdir Yes Yes No
|
||||||
|
- Variable: slave_load_tmpdir Yes Global No
|
||||||
|
slave-net-timeout Yes Yes Yes
|
||||||
|
- Variable: slave_net_timeout Yes Global Yes
|
||||||
|
slave_parallel_workers Yes Global Yes
|
||||||
|
slave-skip-errors Yes Yes No
|
||||||
|
- Variable: slave_skip_errors Yes Global No
|
||||||
|
slave_sql_verify_checksum Yes Global Yes
|
||||||
|
slave_transaction_retries Yes Yes Yes Global Yes
|
||||||
|
slave_type_conversions Yes Yes Yes Global No
|
||||||
|
slow_launch_time Yes Yes Yes Global Yes
|
||||||
|
slow-query-log Yes Yes Yes
|
||||||
|
- Variable: slow_query_log Yes Global Yes
|
||||||
|
slow_query_log_file Yes Yes Yes Global Yes
|
||||||
|
socket Yes Yes Yes Global No
|
||||||
|
sort_buffer_size Yes Yes Yes Both Yes
|
||||||
|
sql_auto_is_null Yes Both Yes
|
||||||
|
sql_big_selects Yes Both Yes
|
||||||
|
sql_big_tables Yes Both Yes
|
||||||
|
sql_buffer_result Yes Both Yes
|
||||||
|
sql_log_bin Yes Both Yes
|
||||||
|
sql_log_off Yes Both Yes
|
||||||
|
sql_low_priority_updates Yes Both Yes
|
||||||
|
sql_max_join_size Yes Both Yes
|
||||||
|
sql-mode Yes Yes Yes
|
||||||
|
- Variable: sql_mode Yes Both Yes
|
||||||
|
sql_notes Yes Both Yes
|
||||||
|
sql_quote_show_create Yes Both Yes
|
||||||
|
sql_safe_updates Yes Both Yes
|
||||||
|
sql_select_limit Yes Both Yes
|
||||||
|
sql_slave_skip_counter Yes Global Yes
|
||||||
|
sql_warnings Yes Both Yes
|
||||||
|
ssl-ca Yes Yes No
|
||||||
|
- Variable: ssl_ca Yes Global No
|
||||||
|
ssl-capath Yes Yes No
|
||||||
|
- Variable: ssl_capath Yes Global No
|
||||||
|
ssl-cert Yes Yes No
|
||||||
|
- Variable: ssl_cert Yes Global No
|
||||||
|
ssl-cipher Yes Yes No
|
||||||
|
- Variable: ssl_cipher Yes Global No
|
||||||
|
ssl-crl Yes Yes No
|
||||||
|
- Variable: ssl_crl Yes Global No
|
||||||
|
ssl-crlpath Yes Yes No
|
||||||
|
- Variable: ssl_crlpath Yes Global No
|
||||||
|
ssl-key Yes Yes No
|
||||||
|
- Variable: ssl_key Yes Global No
|
||||||
|
storage_engine Yes Both Yes
|
||||||
|
stored_program_cache Yes Yes Yes Global Yes
|
||||||
|
sync_binlog Yes Yes Yes Global Yes
|
||||||
|
sync_frm Yes Yes Yes Global Yes
|
||||||
|
sync_master_info Yes Yes Yes Global Yes
|
||||||
|
sync_relay_log Yes Yes Yes Global Yes
|
||||||
|
sync_relay_log_info Yes Yes Yes Global Yes
|
||||||
|
system_time_zone Yes Global No
|
||||||
|
table_definition_cache Yes Yes Yes Global Yes
|
||||||
|
table_open_cache Yes Yes Yes Global Yes
|
||||||
|
thread_cache_size Yes Yes Yes Global Yes
|
||||||
|
thread_concurrency Yes Yes Yes Global No
|
||||||
|
thread_handling Yes Yes Yes Global No
|
||||||
|
thread_stack Yes Yes Yes Global No
|
||||||
|
time_format Yes Global No
|
||||||
|
time_zone Yes Yes Yes Both Yes
|
||||||
|
timed_mutexes Yes Yes Yes Global Yes
|
||||||
|
timestamp Yes Session Yes
|
||||||
|
tmp_table_size Yes Yes Yes Both Yes
|
||||||
|
tmpdir Yes Yes Yes Global No
|
||||||
|
transaction_alloc_block_size Yes Yes Yes Both Yes
|
||||||
|
transaction_prealloc_size Yes Yes Yes Both Yes
|
||||||
|
tx_isolation Yes Both Yes
|
||||||
|
tx_read_only Yes Both Yes
|
||||||
|
unique_checks Yes Both Yes
|
||||||
|
updatable_views_with_limit Yes Yes Yes Both Yes
|
||||||
|
version Yes Global No
|
||||||
|
version_comment Yes Global No
|
||||||
|
version_compile_machine Yes Global No
|
||||||
|
version_compile_os Yes Global No
|
||||||
|
wait_timeout Yes Yes Yes Both Yes
|
||||||
|
warning_count Yes Session No';
|
||||||
|
|
||||||
$vars = explode("\r\n", $vars);
|
$vars = explode("\r\n", $vars);
|
||||||
|
$i = 0;
|
||||||
foreach($vars as $v)
|
foreach($vars as $v)
|
||||||
{
|
{
|
||||||
preg_match('#^(\S+)\s+(\S+)\s+(.+)$#', $v, $matches);
|
// auto_increment_increment Yes Yes Yes Both Yes
|
||||||
switch($matches[2])
|
// version_compile_machine Yes Global No
|
||||||
{
|
preg_match('#^(\-\s+Variable\:\s+)?(\S+)\s{2}(Yes|No|\s)\s{2}(Yes|No|\s)\s{2}(Yes|No|\s)\s{2}(Global|Session|Both|\s)\s{2}(Yes|No|\s)$#', $v, $matches);
|
||||||
case 'numeric': $vartype='vtNumeric'; break;
|
# var_dump($matches);
|
||||||
case 'string': $vartype='vtString'; break;
|
$name = $matches[2];
|
||||||
case 'boolean': $vartype='vtBoolean'; break;
|
$scope = strtoupper(trim($matches[6]));
|
||||||
case 'enumeration': $vartype='vtEnum'; break;
|
if(empty($scope) || strpos($name, '-')!==false)
|
||||||
}
|
continue;
|
||||||
switch($matches[3])
|
switch($scope)
|
||||||
{
|
{
|
||||||
case 'GLOBAL': $varscope='vsGlobal'; break;
|
case 'GLOBAL': $varscope='vsGlobal'; break;
|
||||||
case 'SESSION': $varscope='vsSession'; break;
|
case 'SESSION': $varscope='vsSession'; break;
|
||||||
case 'GLOBAL | SESSION': $varscope='vsBoth'; break;
|
case 'BOTH': $varscope='vsBoth'; break;
|
||||||
}
|
}
|
||||||
echo " (
|
echo " (
|
||||||
Name: '".$matches[1]."';
|
Name: '".$name."';
|
||||||
VarType: ".$vartype.";
|
IsDynamic: ".($matches[7]=='Yes' ? 'True' : 'False').";
|
||||||
VarScope: ".$varscope.";".($vartype=='vtEnum' ? "\r\n EnumValues: '';" : "")."
|
VarScope: ".$varscope.";
|
||||||
),\r\n";
|
),\r\n";
|
||||||
|
$i++;
|
||||||
|
// break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
echo $i;
|
||||||
?>
|
?>
|
||||||
|
@ -14,7 +14,6 @@ object frmEditVariable: TfrmEditVariable
|
|||||||
Font.Style = []
|
Font.Style = []
|
||||||
OldCreateOrder = False
|
OldCreateOrder = False
|
||||||
Position = poMainFormCenter
|
Position = poMainFormCenter
|
||||||
OnClose = FormClose
|
|
||||||
OnCreate = FormCreate
|
OnCreate = FormCreate
|
||||||
OnDestroy = FormDestroy
|
OnDestroy = FormDestroy
|
||||||
OnShow = FormShow
|
OnShow = FormShow
|
||||||
|
@ -7,6 +7,9 @@ uses
|
|||||||
dbconnection, mysql_structures, ComCtrls;
|
dbconnection, mysql_structures, ComCtrls;
|
||||||
|
|
||||||
type
|
type
|
||||||
|
TVarType = (vtString, vtNumeric, vtBoolean, vtEnum);
|
||||||
|
EVariableError = class(Exception);
|
||||||
|
|
||||||
TfrmEditVariable = class(TForm)
|
TfrmEditVariable = class(TForm)
|
||||||
btnOK: TButton;
|
btnOK: TButton;
|
||||||
btnCancel: TButton;
|
btnCancel: TButton;
|
||||||
@ -28,15 +31,18 @@ type
|
|||||||
procedure btnOKClick(Sender: TObject);
|
procedure btnOKClick(Sender: TObject);
|
||||||
procedure FormShow(Sender: TObject);
|
procedure FormShow(Sender: TObject);
|
||||||
procedure FormCreate(Sender: TObject);
|
procedure FormCreate(Sender: TObject);
|
||||||
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
||||||
procedure FormDestroy(Sender: TObject);
|
procedure FormDestroy(Sender: TObject);
|
||||||
procedure btnHelpClick(Sender: TObject);
|
procedure btnHelpClick(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ Private declarations }
|
{ Private declarations }
|
||||||
FVar: TServerVariable;
|
FVar: TServerVariable;
|
||||||
|
FVarType: TVarType;
|
||||||
|
FVarValue: String;
|
||||||
|
procedure SetVarName(Value: String);
|
||||||
public
|
public
|
||||||
{ Public declarations }
|
{ Public declarations }
|
||||||
VarName, VarValue: String;
|
property VarName: String write SetVarName;
|
||||||
|
property VarValue: String write FVarValue;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -64,54 +70,66 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TfrmEditVariable.FormShow(Sender: TObject);
|
procedure TfrmEditVariable.SetVarName(Value: String);
|
||||||
var
|
var
|
||||||
i: Integer;
|
i: Integer;
|
||||||
val: String;
|
Found: Boolean;
|
||||||
begin
|
begin
|
||||||
// Find var name in predefined documented list of variables
|
// Find var name in predefined documented list of variables
|
||||||
|
Found := False;
|
||||||
for i:=Low(MySQLVariables) to High(MySQLVariables) do begin
|
for i:=Low(MySQLVariables) to High(MySQLVariables) do begin
|
||||||
if MySQLVariables[i].Name = VarName then begin
|
if MySQLVariables[i].Name = Value then begin
|
||||||
FVar := MySQLVariables[i];
|
FVar := MySQLVariables[i];
|
||||||
|
Found := True;
|
||||||
|
if not FVar.IsDynamic then
|
||||||
|
raise EVariableError.Create(Value+' is a read only variable, not editable.');
|
||||||
break;
|
break;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
if not Found then
|
||||||
|
raise EVariableError.Create('Could not find '+Value+' variable in internal mapping.');
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TfrmEditVariable.FormShow(Sender: TObject);
|
||||||
|
var
|
||||||
|
val: String;
|
||||||
|
begin
|
||||||
// Verify variable type by value
|
// Verify variable type by value
|
||||||
if (FVar.VarType = vtNumeric) and (not IsNumeric(VarValue)) then
|
FVarType := vtString;
|
||||||
FVar.VarType := vtString;
|
if IsNumeric(FVarValue) then
|
||||||
if (FVar.VarType = vtEnum) and (Pos(UpperCase(VarValue), UpperCase(FVar.EnumValues))=0) then
|
FVarType := vtNumeric;
|
||||||
FVar.VarType := vtString;
|
if (FVar.EnumValues <> '') and (Pos(UpperCase(FVarValue), UpperCase(FVar.EnumValues))>0) then
|
||||||
if (FVar.VarType = vtBoolean) and (Pos(UpperCase(VarValue), 'ON,OFF,0,1,YES,NO')=0) then
|
FVarType := vtEnum;
|
||||||
FVar.VarType := vtString;
|
if (FVarType <> vtEnum) and (Pos(UpperCase(FVarValue), 'ON,OFF,0,1,YES,NO')>0) then
|
||||||
if (FVar.VarType = vtString) and (Pos(UpperCase(VarValue), 'ON,OFF,0,1,YES,NO')>0) then
|
FVarType := vtBoolean;
|
||||||
FVar.VarType := vtBoolean;
|
|
||||||
|
|
||||||
gbValue.Caption := VarName;
|
gbValue.Caption := FVar.Name;
|
||||||
|
|
||||||
lblString.Enabled := FVar.VarType = vtString;
|
lblString.Enabled := FVarType = vtString;
|
||||||
editString.Enabled := FVar.VarType = vtString;
|
editString.Enabled := FVarType = vtString;
|
||||||
lblNumber.Enabled := FVar.VarType = vtNumeric;
|
lblNumber.Enabled := FVarType = vtNumeric;
|
||||||
editNumber.Enabled := FVar.VarType = vtNumeric;
|
editNumber.Enabled := FVarType = vtNumeric;
|
||||||
UpDownNumber.Enabled := FVar.VarType = vtNumeric;
|
UpDownNumber.Enabled := FVarType = vtNumeric;
|
||||||
lblEnum.Enabled := FVar.VarType = vtEnum;
|
lblEnum.Enabled := FVarType = vtEnum;
|
||||||
comboEnum.Enabled := FVar.VarType = vtEnum;
|
comboEnum.Enabled := FVarType = vtEnum;
|
||||||
lblBoolean.Enabled := FVar.VarType = vtBoolean;
|
lblBoolean.Enabled := FVarType = vtBoolean;
|
||||||
radioBooleanOn.Enabled := FVar.VarType = vtBoolean;
|
radioBooleanOn.Enabled := FVarType = vtBoolean;
|
||||||
radioBooleanOff.Enabled := FVar.VarType = vtBoolean;
|
radioBooleanOff.Enabled := FVarType = vtBoolean;
|
||||||
|
|
||||||
case FVar.VarType of
|
case FVarType of
|
||||||
vtString: begin
|
vtString: begin
|
||||||
editString.Text := VarValue;
|
editString.Text := FVarValue;
|
||||||
editString.SelectAll;
|
editString.SelectAll;
|
||||||
editString.SetFocus;
|
editString.SetFocus;
|
||||||
end;
|
end;
|
||||||
vtNumeric: begin
|
vtNumeric: begin
|
||||||
UpDownNumber.Position := MakeInt(VarValue);
|
UpDownNumber.Position := MakeInt(FVarValue);
|
||||||
editNumber.SelectAll;
|
editNumber.SelectAll;
|
||||||
editNumber.SetFocus;
|
editNumber.SetFocus;
|
||||||
end;
|
end;
|
||||||
vtBoolean: begin
|
vtBoolean: begin
|
||||||
val := UpperCase(VarValue);
|
val := UpperCase(FVarValue);
|
||||||
if (val='ON') or (val='1') or (val='YES') then begin
|
if (val='ON') or (val='1') or (val='YES') then begin
|
||||||
radioBooleanOn.Checked := True;
|
radioBooleanOn.Checked := True;
|
||||||
radioBooleanOn.SetFocus;
|
radioBooleanOn.SetFocus;
|
||||||
@ -122,7 +140,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
vtEnum: begin
|
vtEnum: begin
|
||||||
comboEnum.Items.CommaText := FVar.EnumValues;
|
comboEnum.Items.CommaText := FVar.EnumValues;
|
||||||
comboEnum.ItemIndex := comboEnum.Items.IndexOf(UpperCase(VarValue));
|
comboEnum.ItemIndex := comboEnum.Items.IndexOf(UpperCase(FVarValue));
|
||||||
comboEnum.SetFocus;
|
comboEnum.SetFocus;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
@ -136,12 +154,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TfrmEditVariable.FormClose(Sender: TObject; var Action: TCloseAction);
|
|
||||||
begin
|
|
||||||
Action := caFree;
|
|
||||||
end;
|
|
||||||
|
|
||||||
|
|
||||||
{**
|
{**
|
||||||
Compose SQL query and set the new variable value
|
Compose SQL query and set the new variable value
|
||||||
}
|
}
|
||||||
@ -155,9 +167,9 @@ begin
|
|||||||
sql := sql + 'session'
|
sql := sql + 'session'
|
||||||
else
|
else
|
||||||
sql := sql + 'global';
|
sql := sql + 'global';
|
||||||
sql := sql + '.' + VarName + ' = ';
|
sql := sql + '.' + FVar.Name + ' = ';
|
||||||
|
|
||||||
case FVar.VarType of
|
case FVarType of
|
||||||
vtNumeric: val := IntToStr(UpDownNumber.Position);
|
vtNumeric: val := IntToStr(UpDownNumber.Position);
|
||||||
vtString: val := MainForm.ActiveConnection.EscapeString(editString.Text);
|
vtString: val := MainForm.ActiveConnection.EscapeString(editString.Text);
|
||||||
vtBoolean: val := IntToStr(Integer(radioBooleanOn.Checked));
|
vtBoolean: val := IntToStr(Integer(radioBooleanOn.Checked));
|
||||||
|
@ -725,6 +725,7 @@ object MainForm: TMainForm
|
|||||||
OnCompareNodes = AnyGridCompareNodes
|
OnCompareNodes = AnyGridCompareNodes
|
||||||
OnDblClick = ListVariablesDblClick
|
OnDblClick = ListVariablesDblClick
|
||||||
OnGetText = HostListGetText
|
OnGetText = HostListGetText
|
||||||
|
OnPaintText = ListVariablesPaintText
|
||||||
OnGetImageIndex = HostListGetImageIndex
|
OnGetImageIndex = HostListGetImageIndex
|
||||||
OnGetHint = AnyGridGetHint
|
OnGetHint = AnyGridGetHint
|
||||||
OnGetNodeDataSize = AnyGridGetNodeDataSize
|
OnGetNodeDataSize = AnyGridGetNodeDataSize
|
||||||
|
@ -869,6 +869,9 @@ type
|
|||||||
procedure menuClearQueryHistoryClick(Sender: TObject);
|
procedure menuClearQueryHistoryClick(Sender: TObject);
|
||||||
procedure splitterTopBottomMoved(Sender: TObject);
|
procedure splitterTopBottomMoved(Sender: TObject);
|
||||||
procedure actGridEditFunctionExecute(Sender: TObject);
|
procedure actGridEditFunctionExecute(Sender: TObject);
|
||||||
|
procedure ListVariablesPaintText(Sender: TBaseVirtualTree;
|
||||||
|
const TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
|
||||||
|
TextType: TVSTTextType);
|
||||||
private
|
private
|
||||||
FLastHintMousepos: TPoint;
|
FLastHintMousepos: TPoint;
|
||||||
FLastHintControlIndex: Integer;
|
FLastHintControlIndex: Integer;
|
||||||
@ -6806,6 +6809,41 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
procedure TMainForm.ListVariablesPaintText(Sender: TBaseVirtualTree;
|
||||||
|
const TargetCanvas: TCanvas; Node: PVirtualNode; Column: TColumnIndex;
|
||||||
|
TextType: TVSTTextType);
|
||||||
|
var
|
||||||
|
Results: TDBQuery;
|
||||||
|
Idx: PCardinal;
|
||||||
|
i, tmp: Integer;
|
||||||
|
Val: String;
|
||||||
|
dcat: TDBDatatypeCategoryIndex;
|
||||||
|
begin
|
||||||
|
Idx := Sender.GetNodeData(Node);
|
||||||
|
Results := GridResult(Sender);
|
||||||
|
Results.RecNo := Idx^;
|
||||||
|
tmp := -1;
|
||||||
|
for i:=Low(MySQLVariables) to High(MySQLVariables) do begin
|
||||||
|
if MySQLVariables[i].Name = Results.Col(0) then begin
|
||||||
|
tmp := i;
|
||||||
|
break;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
if (tmp=-1) or (not MySQLVariables[tmp].IsDynamic) then
|
||||||
|
TargetCanvas.Font.Color := clInactiveCaptionText
|
||||||
|
else if Column=1 then begin
|
||||||
|
Val := Results.Col(1);
|
||||||
|
if IsNumeric(Val) then
|
||||||
|
dcat := dtcInteger
|
||||||
|
else if (tmp > -1) and ((MySQLVariables[tmp].EnumValues <> '') or (Pos(UpperCase(Val), 'ON,OFF,0,1,YES,NO')>0)) then
|
||||||
|
dcat := dtcOther
|
||||||
|
else
|
||||||
|
dcat := dtcText;
|
||||||
|
TargetCanvas.Font.Color := DatatypeCategories[dcat].Color;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure TMainForm.HostListGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode;
|
procedure TMainForm.HostListGetImageIndex(Sender: TBaseVirtualTree; Node: PVirtualNode;
|
||||||
Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer);
|
Kind: TVTImageKind; Column: TColumnIndex; var Ghosted: Boolean; var ImageIndex: Integer);
|
||||||
var
|
var
|
||||||
@ -6938,11 +6976,20 @@ var
|
|||||||
Dialog: TfrmEditVariable;
|
Dialog: TfrmEditVariable;
|
||||||
begin
|
begin
|
||||||
Dialog := TfrmEditVariable.Create(Self);
|
Dialog := TfrmEditVariable.Create(Self);
|
||||||
|
try
|
||||||
|
try
|
||||||
Dialog.VarName := ListVariables.Text[ListVariables.FocusedNode, 0];
|
Dialog.VarName := ListVariables.Text[ListVariables.FocusedNode, 0];
|
||||||
Dialog.VarValue := ListVariables.Text[ListVariables.FocusedNode, 1];
|
Dialog.VarValue := ListVariables.Text[ListVariables.FocusedNode, 1];
|
||||||
// Refresh list node
|
// Refresh list node
|
||||||
if Dialog.ShowModal = mrOK then
|
if Dialog.ShowModal = mrOK then
|
||||||
InvalidateVT(ListVariables, VTREE_NOTLOADED, False);
|
InvalidateVT(ListVariables, VTREE_NOTLOADED, False);
|
||||||
|
except
|
||||||
|
on E:EVariableError do
|
||||||
|
ErrorDialog(E.Message);
|
||||||
|
end;
|
||||||
|
finally
|
||||||
|
Dialog.Free;
|
||||||
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user