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

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » データのインポートとエクスポート » データエクスポート

 

テーブルのエクスポート (SQL の場合)

Interactive SQL から UNLOAD TABLE 文を実行して、テーブルをエクスポートできます。

前提条件

変数へのアンロード時には、権限は必要ありません。それ以外の場合、必要な権限は、データベースサーバの -gl オプションによって異なります。

  • -gl オプションが ALL に設定されている場合は、そのテーブルの所有者であるか、そのテーブルに対する SELECT 権限を持っているか、または SELECT ANY TABLE システム権限を持っていることが必要です。

  • -gl オプションが DBA に設定されている場合は、SELECT ANY TABLE システム権限が必要です。

  • -gl オプションが NONE に設定されている場合、UNLOAD は使用できません。

クライアントコンピュータにあるファイルにアンロードする場合

  • WRITE CLIENT FILE 権限が必要です。

  • そのファイルが置かれているディレクトリに対する書き込みパーミッションが必要です。

  • allow_write_client_file データベースオプションが有効になっている必要があります。

  • write_client_file セキュリティ機能が有効になっている必要があります。

内容と備考

テーブル内のすべてのデータを選択して、クエリ結果をエクスポートすることにより、テーブルをエクスポートできます。

 ♦ タスク
  • UNLOAD TABLE 文を実行します。次に例を示します。

    UNLOAD TABLE Departments
    TO 'C:\\ServerTemp\\Departments.csv';

    この文は、SQL Anywhere サンプルデータベースの Departments テーブルを、クライアントコンピュータではなくデータベースサーバコンピュータのディレクトリにある Departments.csv ファイルにアンロードします。このファイルのパスは SQL リテラルで指定されるため、円記号は 2 つ重ねることによりエスケープされ、'\n' または '\x' などのエスケープシーケンスの変換が回避されます。

    テーブルの各ローは出力ファイルの 1 行に書き出されます。また、カラム名はエクスポートされません。各カラムはカンマで区切られます。デリミタに使う文字は、DELIMITED BY 句で変更できます。フィールドは固定幅ではありません。エクスポートされるのは、各エントリの文字だけで、カラム幅全体ではありません。

結果

データが指定されたファイルにエクスポートされます。

 参照