Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Mobile Link - サーバ管理 » Mobile Link イベント » 同期イベント

 

download_statistics テーブル・イベント

ダウンロード操作の同期統計をテーブル別に追跡します。

パラメータ

次の表の説明では、SQL データ型を示します。Java または .NET でスクリプトを作成する場合、適切なデータ型を使用してください。SQL データ型と Java データ型SQL データ型と .NET データ型を参照してください。

SQL スクリプトでは、名前または疑問符を使用してイベント・パラメータを指定できますが、スクリプト内に名前と疑問符を混在させることはできません。疑問符を使用する場合、パラメータは以下に示す順に指定する必要があり、後続のパラメータが指定されていない場合のみ省略可能です (たとえば、パラメータ 2 を使用する場合は、パラメータ 1 を使用してください)。名前付きパラメータを使用する場合は、パラメータの任意のサブセットを任意の順に指定できます。

SQL スクリプトのパラメータ名

説明

順序

s.remote_id VARCHAR(128)。Mobile Link リモート ID。名前付きパラメータを使用している場合のみ、リモート ID を参照できます。 適用不可

s.username

VARCHAR(128)。SYNCHRONIZATION USER 定義に指定した Mobile Link ユーザ名。

1

s.table

VARCHAR(128)。テーブル名。

2

s.warnings

INTEGER。発行された警告の数。

3

s.errors

INTEGER。処理済みのエラーを含め、発生したエラーの数。

4

s.fetched_rows

INTEGER。download_cursor スクリプトによってフェッチされたローの数。

5

s.deleted_rows

INTEGER。download_delete_cursor スクリプトによってフェッチされたローの数。

6

s.filtered_rows

INTEGER。(6) から実際にリモートに送信されたローの数。これには、アップロードされた値のダウンロード・フィルタが反映されます。

7

s.bytes

INTEGER。ダウンロードとしてリモートに送信されたバイト数。

8

デフォルトのアクション

なし

備考

download_statistics イベントを使用すると、任意のユーザとテーブルについて、そのテーブルに適用されるダウンロードの統計を収集できます。ダウンロード・トランザクション終了時のコミット直前に、download_statistics テーブル・スクリプトが呼び出されます。

参照
SQL の例

次の例は、同期の統計を download_audit というテーブルに挿入します。監査テーブルに重要な統計が挿入されたら、これらの統計を使用して同期をモニタし、必要に応じて最適化を実行できます。

CALL ml_add_table_script(
 'ver1',
 'table1',
 'download_statistics',
 'INSERT INTO download_audit (
   user_name, 
   table, warnings, 
   errors,
   deleted_rows, 
   fetched_rows, 
   download_rows, 
   bytes)
  VALUES (
   {ml s.username}, 
   {ml s.table}, 
   {ml s.warnings}, 
   {ml s.errors}, 
   {ml s.fetched_rows}, 
   {ml s.deleted_rows}, 
   {ml s.filtered_rows}, 
   {ml s.bytes})')
Java の例

次の Mobile Link システム・プロシージャ・コールは、スクリプト・バージョン ver1 を同期するときに、downloadStatisticsTable という Java メソッドを download_statistics テーブル・イベント用のスクリプトとして登録します。

CALL ml_add_java_table_script(
  'ver1',
  'table1',
  'download_statistics',
  'ExamplePackage.ExampleClass.downloadStatisticsTable' )

次に示すのは、サンプルの Java メソッド downloadStatisticsTable です。このメソッドは、このテーブルの統計を Mobile Link メッセージ・ログに出力します (テーブルの統計を Mobile Link メッセージ・ログに出力すると、開発時には便利ですが、運用サーバのパフォーマンスが遅くなります)。

public String downloadStatisticsTable(
  String user,
  String table,
  int warnings,
  int errors,
  int fetchedRows,
  int deletedRows,
  int bytes ) {
  java.lang.System.out.println( "download table stats "
   + "table: " + table + "bytes: " + bytes );
  return ( null );
}
.NET の例

次の Mobile Link システム・プロシージャ・コールは、スクリプト・バージョン ver1 とテーブル table1 を同期するときに、DownloadTableStats という .NET メソッドを download_statistics テーブル・イベント用のスクリプトとして登録します。

CALL ml_add_dnet_table_script(
 'ver1',
 'table1',
 'download_statistics',
 'TestScripts.Test.DownloadTableStats'
)

次に示すのは、サンプルの .NET メソッド DownloadTableStats です。このメソッドは、このテーブルの統計を Mobile Link メッセージ・ログに出力します (テーブルの統計を Mobile Link メッセージ・ログに出力すると、開発時には便利ですが、運用サーバのパフォーマンスが遅くなります)。

public string DownloadTableStats(
  string user,
  string table,
  int warnings,
  int errors,
  int deletedRows,
  int fetchedRows,
  int downloadRows,
  int bytes ) {
  System.Console.WriteLine( "download table stats "
   + "table: " + table + "bytes: " + bytes );
  return ( null );
}