Ultra Light クライアントでは、manual とマーク付けされていないスクリプトは、データベースの次回起動時に自動的に実行されます。ただし、接続パラメータ dont_run_scripts が設定されている場合は実行されません。
進行状況 observer コールバックが指定されている場合、手動実行と自動実行のどちらのときも、スクリプト実行の進行状況を提供できます。進行状況 observer コールバックは、次のように定義されます。
typedef void(UL_CALLBACK_FN *ul_sql_passthrough_observer_fn) ( ul_sql_passthrough_status * status ); |
ul_sql_passthrough_status 構造体は、次のように定義されます。
typedef struct { ul_sql_passthrough_state state; // current state ul_u_long script_count; // total number of scripts to execute ul_u_long cur_script; // current script being executed (1-based) ul_bool stop; // set to true to stop script execution // can only be set in the starting state ul_void * user_data; // user data provided in register call SQLCA * sqlca; } ul_sql_passthrough_status; |
進行状況 observer コールバックは、次のメソッドによって登録されます。
UL_FN_SPEC ul_ret_void UL_FN_MOD ULRegisterSQLPassthroughCallback( SQLCA * sqlca, ul_sql_passthrough_observer_fn callback, ul_void * user_data ); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |