ユーティリティ・プログラム Sybase® Adaptive Server® Enterprise バージョン 12.0 UNIX プラットフォーム 版 ドキュメント ID: 32306-01-1200-01 改訂 : 1999 年 10 月 このマニュアルの内容は、予告なく変更されることがありますが、Sybase, Inc. およびその関連会社では内容の変更に関して一切の責任を負いません。 このマニュアルに記載されているソフトウェアはライセンス契約に基づいて提供 されるものであり、無断で使用することはできません。 このマニュアルの内容を弊社の書面による事前許可を得ずに電子的、機械的、手 作業、光学的、またはその他のいかなる手段によっても複製、転載、翻訳するこ とを禁じます。 マニュアルの注文 マニュアルの注文を承ります。ご希望の方は、サイベース株式会社営業部または 代理店までご連絡ください。マニュアルの変更は、弊社の定期的なソフトウェ ア・リリース時にのみ提供されます。 Copyright © 1989-1999 by Sybase, Inc. All rights reserved. Sybase の商標 Sybase、SYBASE のロゴ、AnswerBase、Embedded SQL、 ENTERPRISECONNECT、Gain Momentum、Navigation Server、 ObjectConnect、ObjectCycle、OMNICONNECT、Open Client、Open ClientConnect、Power Dynamo、PowerBuilder、Powersoft、Replication Agent、Replication Driver、Replication Server、SQL Central、SQL Remote、 Sybase IQ、Sybase SQL Anywhere 、Sybase System 11、Sybase WAREHOUSEWORKS、Sybase どこでも SQL、SyBooks は、米国法人 Sybase, Inc. の登録商標です。Backup Server、Client Library、DBLibrary、e-Anywhere、 EIP、Enterprise Information Portal、Enterprise Messaging Services、Fastbuild、 Financial Server、Information Anywhere、Mainframe Connect、MASS DEPLOYMENT、media.splash、Net Gateway、Net Library、NetImpact、Open SERVERCONNECT、QuickStart DataMart、SADG、SQL Debug、SQL Server、 SQL Servermanager、SQL Servermonitor、Support Plus、Support Plus Lite、 The Architecture for Change、web.sql は、米国法人 Sybase, Inc. の商標です。 このマニュアルに記載されている上記以外の社名および製品名は、各社の商標ま たは登録商標の場合があります。 権利について 米国政府よる使用、複写、開示は、国防総省の契約に関して DFARS 52.227-7013 の項目 (c) (1) (ii) に明記されている制約条項、およびその他の政府機関の契約に関しては FAR 52.227-19 (a)-(d) に明記されている制約条項に従います。 Sybase, Inc., 6475 Christie Avenue, Emeryville, CA 94608 iii iv 目次 はじめに ......................................................................................................................................... ix 第1章 第2章 isql ユーティリティの使用 .............................................................. isql ユーティリティの起動と終了 ................................................... isql ユーティリティによる Transact-SQL の使用法 ....................... isql 出力のフォーマット ........................................................... 入力の訂正 ............................................................................... 出力を制御する set オプション ............................................... コマンド・ターミネータの変更 ...................................................... コマンド・ターミネータ値とパフォーマンス統計値との関係 ....... ネットワーク・パケット・サイズの設定 ....................................... クライアントでのネットワーク・パケット・サイズの設定 .... 入出力ファイル ............................................................................... UNIX コマンド・ラインのリダイレクト .................................. bcp を使用した Adaptive Server とのデータの転送 .................... データの転送方法 ......................................................................... bcp を使用したデータのインポートとエクスポート ............. bcp を使用するための稼働条件 .................................................... 必要な基本情報 ...................................................................... データをコピーするのに必要なパーミッション .................... 転送前の作業 .......................................................................... bcp のモード ................................................................................. bcp のパフォーマンスの問題 ........................................................ 高速 bcp および低速 bcp の使用 ............................................ 高速 bcp を使ってデータをコピーする手順 .......................... 分割されたテーブルへのバルク・コピー ............................... パラレル・バルク・コピーを使った特定の分割への データのコピー ............................................................... bcp オプションの使用 ................................................................... デフォルト・フォーマットの使用 ......................................... コマンド・ラインでのターミネータの変更 ........................... デフォルトの変更:対話型 bcp .................................................... 1 2 3 3 4 5 6 7 8 8 9 9 11 12 12 14 14 14 15 16 17 17 19 20 23 30 30 31 32 v 目次 ファイル記憶タイプ ............................................................... プレフィクス長 ...................................................................... フィールド長 .......................................................................... フィールド・ターミネータとロー・ターミネータ ................ フォーマット・ファイルの使用 .................................................... bcp フォーマット・ファイルの要素 ...................................... データを対話形式でコピー・アウトする例 .................................. フィールド長を指定してデータをコピー・アウトする例 ..... デリミタを指定してデータをコピー・アウトする例 ............. データを対話形式でコピー・インする例 ..................................... フィールド長を指定してデータをコピー・インする例 ......... デリミタを指定してデータをコピー・インする例 ................ フォーマット・ファイルを指定してデータを コピー・インする例 ........................................................ 代替言語での bcp の使用 .............................................................. コピー・インとバッチ・ファイル ................................................ リカバリ性の向上 ................................................................... バッチと分割されたテーブル ................................................. text または image データのコピー・アウト ................................. ネットワーク・パケット・サイズの指定 ..................................... コピー・インとエラー・ファイル ................................................ コピー・アウトとエラー・ファイル ............................................. データの整合性:デフォルト、ルール、トリガ ........................... デフォルトとデータ型 ........................................................... ルールとトリガ ...................................................................... bcp と他のユーティリティの相違点 ............................................. 第3章 vi 32 34 35 37 39 40 44 44 46 48 48 50 50 52 53 53 54 55 56 57 59 60 60 60 61 dsedit の使用 ................................................................................. 63 dsedit について ............................................................................. 64 dsedit の実行 .......................................................................... 64 編集セッションのオープン ........................................................... 65 サーバ・エントリの追加、表示、編集 ......................................... 67 ネットワーク・トランスポート・アドレスの追加または 編集 ................................................................................. 68 SPX/IPX アドレス .................................................................. 68 dsedit に関するトラブルシューティング ...................................... 70 dsedit ユーティリティが起動しない ...................................... 70 エラー・メッセージ :"Unable to open X display" ................... 70 サーバ・エントリを追加、変更、または削除できない ......... 71 目次 第4章 第5章 dscp の使用 ................................................................................... dscp について ............................................................................... dscp の実行 ............................................................................ dscp についてのヘルプへのアクセス .................................... dscp セッションの使用 .......................................................... サーバ・エントリの操作 ............................................................... サーバ・エントリの追加と変更 ............................................. サーバ・エントリのコピー .................................................... サーバ・エントリの表示 ........................................................ サーバ・エントリの内容の表示 ............................................. サーバ・エントリの削除 ........................................................ dscp の終了 ................................................................................... dscp ユーティリティ・コマンドのクイック・リファレンス ....... 73 74 74 74 74 76 76 79 80 81 81 82 83 ユーティリティ・コマンド・リファレンス ................................... 85 ユーティリティ・プログラムの起動 ............................................. 86 ユーティリティ・クイック・リファレンス .................................. 88 インストール・ユーティリティと設定ユーティリティ ......... 88 言語、文字セット、ソート順の設定ユーティリティ ............. 89 サーバ起動ユーティリティ .................................................... 89 データベース作成ユーティリティと操作ユーティリティ ..... 90 情報収集ユーティリティ ........................................................ 90 backupserver ................................................................................. 91 bcp ................................................................................................ 96 bcp_dce ....................................................................................... 114 buildmaster .................................................................................. 134 charset ........................................................................................ 137 dataserver ................................................................................... 138 defncopy ...................................................................................... 141 defncopy_dce .............................................................................. 147 dscp ............................................................................................. 153 dscp_dce ..................................................................................... 154 dsedit ........................................................................................... 155 dsedit_dce ................................................................................... 156 extractjava ................................................................................... 157 installjava .................................................................................... 160 isql ............................................................................................... 165 isql_dce ....................................................................................... 175 langinstall .................................................................................... 184 optdiag ........................................................................................ 187 showserver .................................................................................. 194 sqlloc ........................................................................................... 195 sqllocres ...................................................................................... 197 sqlupgrade .................................................................................. 198 vii 目次 sqlupgraderes ............................................................................. srvbuild ........................................................................................ srvbuildres ................................................................................... startserver ................................................................................... sybload ........................................................................................ sybsetup ...................................................................................... 199 200 201 202 205 207 索引 ............................................................................................................................................. 209 viii はじめに この『ユーティリティ・プログラム UNIX 版』では、UNIX プ ラットフォーム 上で使用できる Adaptive Server Enterprise ユー ティリティ・プログラムについて説明します。ユーティリティ・ プログラムは、オペレーティング・システムから直接呼び出すコ マンドです。 対象読者 このマニュアルは、Transact-SQL と Adaptive Server Enterprise バージョン 12 を使用する方を対象としています。お読みいただ くには、UNIX プラットフォーム オペレーティング・システムと Adaptive Server の使用方法についての基礎知識が必要です。 このマニュアルの内容 このマニュアルの内容は、次のとおりです。 • 「第 1 章 isql ユーティリティの使用」 オペレーティング・システムから SQL にアクセスするために 使う対話型 SQL (isql) ユーティリティの使用方法について説 明します。 • 「第 2 章 bcp を使用した Adaptive Server とのデータの転送」 Adaptive Server とオペレーティング・システムの間で データを移動するために使用するバルク・コピー・ユーティ リティ (bcp) について詳しく説明します。 • 「第 3 章 dsedit の使用」 X-Windows でディレクトリ・サービス・エディタ (dsedit) ユーティリティを使用して、interfaces ファイルのサーバ・エ ントリを表示、編集する方法について説明します。 • 「第 4 章 dscp の使用」 dscp ユーティリティを使用して interfaces ファイルのサー バ・エントリを表示、編集する方法について説明します。 • 「第 5 章 ユーティリティ・コマンド・リファレンス」 データベースと Adaptive Server Enterprise の管理に使用 するユーティリティ・コマンドについて説明します。 このマニュアル内の例は、pubs2 サンプル・データベースを基に しています。pubs2 のクリーン・コピーを取得する方法について は、システム管理者に問い合わせてください。 ix Adaptive Server Enterprise の マニュアル Adaptive Server Enterprise には次のマニュアルが用意されています。 必要に応じて参照してください。 • お使いのプラットフォームの『リリース・ノート』 マニュアルには記載できなかった最新の情報が記載されています。 『リリース・ノート』の最新版 ( 英語版 ) は WWW で見ることが できます。この製品の CD-ROM がリリースされたあとに追加さ れた重要な製品情報やマニュアル情報を確認する場合には、 Sybase の Technical Library Product Manuals Web サイトを参照し てください。 Technical Library Product Manuals Web サイトのリリース・ノー トにアクセスするには、次の手順に従います。 a Product Manuals の http://sybooks.sybase.com にアクセスし ます。 b 製品ファミリのリンクをクリックします。 c 製品のリンクをクリックします。 d 左側のフレームの Collection リストで目的の製品バージョン を探し、使用しているプラットフォーム版のリンクをクリッ クします。 e 右側のフレームのマニュアル・リストで、使用しているプ ラットフォーム用のリリース・ノートのリンクをクリックし ます。 リリース・ノートをブラウズするか、左側のフレームの下にあ る [PDF] ボタンをクリックして PDF 版をダウンロードします。 • 『Adaptive Server インストール・ガイド』 Adaptive Server および関連する Sybase 製品のインストール、 アップグレード、設定の手順について説明します。 • 『Adaptive Server Enterprise 新機能ガイド』 Adaptive Server バージョン 12 の新しい機能について説明します。 新しい機能をサポートするために追加されたシステムの変更や既 存のアプリケーションに影響する変更について説明します。 • 『Transact-SQL ユーザーズ・ガイド』 リレーショナル・データベース言語の拡張版である Sybase の Transact-SQL について説明します。このマニュアルは、データ ベース管理システムの操作に慣れていない方のためにテキスト ブック形式で説明されています。また、サンプル・データベース pubs2 および pubs3 についても説明しています。 x はじめに • 『システム管理ガイド』 サーバとデータベースを管理するための高度な情報について説明 します。このマニュアルでは、物理的なリソース、セキュリ ティ、ユーザ・データベース、システム・データベースの管理方 法、および文字セットの変換、言語の国際化、ソート順の指定方 法についての手順とガイドラインを説明します。 • 『Adaptive Server リファレンス・マニュアル』 Transact-SQL コマンド、関数、プロシージャ、データ型について 説明します。また、Transact-SQL コマンドの予約語のリストとシ ステム・テーブルの定義についても説明しています。 • 『パフォーマンス&チューニング・ガイド』 Adaptive Server を最高のパフォーマンスにするためのチューニン グ方法について説明します。このマニュアルでは、パフォーマン スに影響するようなデータベースの設計、クエリの最適化、大型 データベースのチューニング方法、ディスクとキャッシュ、ロッ クとカーソルによるパフォーマンスの影響について説明します。 • 『ユーティリティ・プログラム』 オペレーティング・システム・レベルで実行される isql や bcp と いった Adaptive Server のユーティリティ・プログラムについて 説明します。 • 『トラブルシューティングおよびエラー・メッセージ・ガイド』 発生頻度の高いエラー・メッセージとシステムの問題についての 解決方法を説明します。 • 『コンポーネント統合サービス・ユーザーズ・ガイド』 リモートでの Sybase データベースおよび Sybase 以外のデータ ベースヘ接続するための Adaptive Server コンポーネント統合 サービス機能について説明します。 • 『Adaptive Server Enterprise における Java』 Java クラスをデータ型およびユーザ定義の関数として Adaptive Server データベースにインストールし、使用する方法について説 明します。 • 『高可用性システムにおける Sybase フェールオーバの使用』 Sybase のフェールオーバを使用して Adaptive Server をコンパニ オン・サーバとして設定し、システムの可用性を高める方法につ いて説明します。 • 『分散トランザクション管理ユーザーズ・ガイド』 分散トランザクション処理環境での Adaptive Server DTM 機能の 設定、使用、トラブルシューティングについて説明します。 xi • 『XA Interface Integration Guide for CICS, Encina, and TUXEDO』 Sybase が提供する、X/Open XA トランザクション・マネージャ 用 DTM XA Interface の使い方について説明します。 • 『Adaptive Server 用語解説』 Adaptive Server マニュアルで使用される専門用語を定義します。 その他の情報ソース Sybase の Technical Library CD と Technical Library Product Manuals Web サイトを使用して、製品についてのより多くの情報を得ることが できます。 • ソフトウェアに同梱されている Technical Library CD には、製品 マニュアルと技術資料が収録されています。Technical Library CD に含まれている DynaText ブラウザを使用して、製品についての 技術情報に簡単にアクセスできます。 Technical Library のインストールおよび起動方法については、マ ニュアル・パッケージの中の『Technical Library Installation Guide』を参照してください。 • Technical Library Product Manuals Web サイトは、HTML 版の Technical Library CD であり、標準の Web ブラウザを使用してア クセスできます。この他に、Technical Documents Web サイト ( 旧 Tech Info Library)、Solved Cases ページ、Sybase/Powersoft ニュースグループへのリンクもあります。 Technical Library Product Manuals Web サイトのアドレスは、 http://sybooks.sybase.com です。 表記の規則 このマニュアルの本文では、次のようにファイル名とディレクトリ名 を斜体で表記します。 $SYBASE 表 1 は、このマニュアルで使用されている表記 ( フォントと構文 ) の 規則をまとめたものです。 xii はじめに 表 1: このマニュアルのフォントと構文の規則 要素 コマンド名、コマンドのオプ ション名、ユーティリティ名、 ユーティリティのフラグ、キー ワードは、太字で表記する。 例 データベース名、データ型、 ファイル名、パス名は、斜体で 表記する。 master データベース dsedit $SYBASE/bin 注意 $SYBASE は、Sybase をインストー ルするドライブとディレクトリに置き換 えてください。 変数 ( ユーザが入力する値を表す 語 ) は、斜体で表記する。 select column_name from table_name where search_conditions カッコはコマンドの一部として 入力する。 中カッコは、その中から必ず 1 つ以上のオプションを選択する 必要があることを意味する (「カ ンマ」参照 )。 compute row_aggregate (column_name) {cheese, sauce} 注意 コマンドには中カッコは入 力しない。 角カッコは、オプションを選択 しても省略してもよいことを意 味する。 [anchovies, pineapple, bell_peppers] 注意 コマンドには角カッコは入 力しない。 縦線は、中カッコまたは角カッ コの中の縦線で区切られたオプ ションのうち 1 つだけを選択で きることを意味する。 {cash | check | credit} カンマは、中カッコまたは角 カッコの中のカンマで区切られ たオプションをいくつでも選択 できることを意味する。複数の オプションを選択する場合には、 オプションどうしをカンマで区 切る。 [extra_cheese, avocados, sour_cream] xiii 要素 省略記号 ( ピリオド 3 つ ) は、省 略記号の前の要素を必要な回数 だけくり返し指定できることを 意味する。 例 buy thing = price [cash | check | credit] [, thing = price [cash | check | credit] ]... - この例では、製品 (thing) を少なくと も 1 つ購入 (buy) し、価格 (price) を設定 します。 - 支払い方法を角カッコの中から 1 つ 選択できます。 - さらに、他の製品をいくらでも購入す ることができます。各購入 (buy) に対し て、購入した製品 (thing)、価格 (price)、 オプションで支払い方法 (cash、check、 credit のいずれか ) を指定します。 オプション句があるユーティリ ティの構文例を示します。 dscp [-p | -v] さらに多くのオプションがある ユーティリティの構文例を示し ます。 buildmaster [-d physicalname] [-c cntrltype] [-s size] [-m] 注意 構文では、ユーティリティ とその構文を通常のフォントの 小文字で表記します。ただし、 フラグ (-c) とオプション (cash) は 通常のフォント、ユーザが指定 する値 (physicalname) は斜体で表 記します。 bcp -v 次に太字で表記するユーティリ ティ・コマンドの例を示します。 ( 表の下の例を参照 ) コンピュータからの出力例を示 します。 pub_id pub_name ------- ------------------0736 New Age Books 0877 Binnet & Hardley 1389 Algodata Infosystems (3 rows affected) xiv city state ----------- ----Boston MA Washington DC Berkeley CA はじめに 不明な点があるときは Sybase ソフトウェアがインストールされているサイトには、Sybase 製品の保守契約を結んでいるサポート・センタとの連絡担当の方 ( コ ンタクト・パーソン ) を決めてあります。マニュアルだけでは解決で きない問題があった場合には、担当の方を通して Sybase のサポート・ センタまでご連絡ください。 xv xvi 第 1 章 isql ユーティリティの使用 この章では、対話型 SQL ユーティリティの isql について説明し ます。 この章の内容は次のとおりです。 項名 isql ユーティリティの起動と終了 isql ユーティリティによる Transact-SQL の使用法 ページ 2 3 コマンド・ターミネータの変更 6 7 コマンド・ターミネータ値とパフォーマンス統計値との関係 ネットワーク・パケット・サイズの設定 入出力ファイル 8 9 注意 オペレーティング・システムから isql ユーティリティ・プロ グラムを使って Transact-SQL を直接使用するためには、 Adaptive Server 上にアカウント ( ログイン名 ) を持っている必要 があります。 isql の構文の詳細については、 「installjava」(160 ページ ) を参照 してください。 1 isql ユーティリティの起動と終了 isql ユーティリティの起動と終了 isql を起動するには、次の手順に従います。 1 オペレーティング・システムのプロンプトで次のコマンドを入力 します。 isql 次のプロンプトが表示されます。 Password: 2 パスワードを入力します。 入力したパスワードは画面には表示されません。次のような isql プロンプトが表示されます。 1> これで、Transact-SQL コマンドを発行できます。 isql を終了するには、次の手順に従います。 1 行に次のコマンドのどちらかを単独で入力します。 quit exit 2 第1章 isql ユーティリティの使用 isql ユーティリティによる Transact-SQL の使用法 isql は、Transact-SQL コマンドを Adaptive Server に送信し、結果を フォーマットしてから、標準出力に出力します。isql 文には最大サイ ズの制限はありません。Transact-SQL の使用に関する詳細は、 『Transact-SQL ユーザーズ・ガイド』を参照してください。 Transact-SQL コマンドを終了するには、改行してデフォルトのコマン ド・ターミネータの "go" を入力してください。 次に例を示します。 isql Password: 1> 2> 1> 2> 3> 4> use pubs2 go select * from authors where city = "Oakland" go isql 出力のフォーマット 表 1-1 では、isql 出力のフォーマットを変更するコマンド・ライン・ オプションを説明します。 表 1-1: isql のフォーマット・オプション オプション -h headers デフォルト 1 -s colseparator シングル・ スペース 80 文字 -w columnwidth 意味 カラム見出しとカラム見出しの間に出力する ローの数 カラム・セパレータ文字を変更 行の長さを変更 isql に対して発行された各コマンドを出力に含めるには、-e オプショ ンを使用してください。行番号およびプロンプト記号を削除するに は、-n オプションを使用してください。 次に例を示します。 use pubs2 go isql -e -n -o output Password: 3 isql ユーティリティによる Transact-SQL の使用法 select * from authors where city = "Oakland" go quit cat output select * from authors where city = "Oakland" au_id au_lname au_fname phone address city state country postalcode ----------- ---------------------------------------- ----------------------------- ----------------------------------------------------------- ----- ------------ ---------213-46-8915 Green Marjorie 415 986-7020 309 63rd St. #411 Oakland CA USA 94618 274-80-9391 Straight Dick 415 834-2919 5420 College Av. Oakland CA USA 94609 724-08-9931 Stringer Dirk 415 843-2991 5420 Telegraph Av. Oakland CA USA 94609 724-80-9391 MacFeather Stearns 415 354-7128 44 Upland Hts. Oakland CA USA 94612 756-30-7391 Karsen Livia 415 534-9219 5720 McAuley St. Oakland CA USA 94609 コマンド・ターミネータは output ファイルには含まれません。 入力の訂正 Transact-SQL コマンドの入力中にミスをした場合は、次のどちらかの 方法で訂正してください。 • 4 [Ctrl + c] を押すか、または "reset" という語を 1 行に単独で入力し ます。 第1章 isql ユーティリティの使用 これで、クエリ・バッファがクリアされて、isql プロンプトに戻 ります。 • テキスト・エディタの名前を 1 行に単独で入力します。 テキスト・ファイルが開き、クエリを編集できるようになります。 ファイルに書き込んで保存すると、isql に戻り、訂正後のクエリが 表示されます。"go" と入力してクエリを実行してください。 出力を制御する set オプション 表 1-2 は、Transact-SQL の出力に影響する set オプションのリストで す。詳細については、『Adaptive Server リファレンス・マニュアル』 の set を参照してください。 表 1-2: Transact-SQL の出力に影響する set オプション set オプション char_convert デフォルト オフ 意味 Adaptive Server とクライアント間の文字セット変換のオン/ オフを行う。また、サーバの文字セットとクライアントの文 字セット間の変換を開始する。 SQL92 のエントリ レベルの範囲を超える Transact-SQL 拡張 機能が使用されたときに警告する。このオプションをオン にしても、SQL 拡張機能は無効にならない。ANSI 規格に準 拠しない SQL コマンドを発行しても処理は完了する。 生成されたメッセージを送信する。 fipsflagger オフ flushmessage language オフ us_english nocount オフ noexec オフ 各クエリをコンパイルするが、実行はしない。showplan とと もに使用されることが多い。 parseonly オフ クエリのコンパイルおよび実行を行わずに、クエリの構文 をチェックし、エラー・メッセージを返す。 showplan オフ statistics io statistics time オフ クエリの処理プランの記述を生成する。ストアド・プロ シージャまたはトリガの中で使用するときは結果を出力し ない。 各実行のあとに、パフォーマンスの統計値を表示する。 statistics subquerycache オフ textsize 32K システム・メッセージの言語を設定する。 影響されたローの数をレポートしないようにする。 キャッシュのヒット数、ミス数、各サブクエリのサブクエ リ・キャッシュ内のローの数を表示する。 返される text データまたは image データのバイト数を制御 する。 5 コマンド・ターミネータの変更 コマンド・ターミネータの変更 コマンド・ターミネータ引数 (-c) を指定すると、ユーザー自身のター ミネータ記号を選択できます。go はこのオプションのデフォルト値 です。コマンド・ターミネータは必ず、前にブランクやタブを入れず に、左づめで入力してください。 たとえば、ピリオドをコマンド・ターミネータとして使用するには、 次のように isql を呼び出します。 isql -c. このコマンド・ターミネータを使用した isql セッションの例を次に示 します。 1> select name from sysusers 2> . name ----------sandy kim leslie (3 rows affected) スクリプトで isql コマンド・ターミネータ・オプションを使用するに は、あらかじめ次の計画をしておく必要があります。 6 • installmaster のような Adaptive Server が提供するスクリプトで は、"go" を使用します。これらのスクリプトを使用するセッショ ンでは、コマンド・ターミネータを変更しないでください。 • ユーザー自身のスクリプトにもすでに "go" が入っている可能性が あります。別のコマンド・ターミネータを使用するには、スクリ プト中のコマンド・ターミネータも更新してください。 第1章 isql ユーティリティの使用 コマンド・ターミネータ値とパフォーマンス統計値との関係 isql には、パフォーマンス統計値オプション (-p) があります。 例を示します。 isql -p 1> select * from sysobjects 2> go この例では、次のような統計値が返されます。 Execution Time (ms.): 1000 1 xact: Clock Time (ms.): 1000 これは、1 つのトランザクションに 100 ミリ秒かかったという意味で す。クロック・タイム値はトランザクション全体を反映しています。 つまり、Client-Library がクエリを構築するときから、Client-Library が Adaptive Server からの情報を返すまでの時間です。 1 つまたは複数のトランザクションの実行に基づいてパフォーマンス の統計値を収集できます。複数のトランザクションについて統計値を 収集する場合には、コマンド・ターミネータのうしろに数字を指定し てください。以下に例を示します。 isql -p 1> select * from sysobjects 2> go 3 この例では、select * トランザクションを 3 回実行して、パフォーマン ス統計値をレポートするように、Adaptive Server に指示しています。 Adaptive Server からは、次のようなレポートが返されます。 Execution Time (ms.): 1000 Execution Time (ms.): 1000 Execution Time (ms.): 1000 Clock Time (ms.): 1000 Clock Time (ms.): 2000 Clock Time (ms.): 1000 Execution Time (ms.): 1000 3xact: Clock Time (ms.): 4000 7 ネットワーク・パケット・サイズの設定 ネットワーク・パケット・サイズの設定 適正なネットワーク・パケット・サイズを設定することにより、 Adaptive Server のパフォーマンスを飛躍的に向上させることができ ます。 クライアントでのネットワーク・パケット・サイズの設定 -A size オプションは、isql セッションで使用するネットワーク・パ ケット・サイズを指定します。次に例を示します。 isql -A 2048 この指定により、この isql セッションでは、パケット・サイズは 2,048 バイトに設定されます。ネットワーク・パケット・サイズを チェックするには、次のように入力してください。 select * from sysprocesses この isql セッションのパケット・サイズ値は、sysprocesses テーブルの 中の network_pktsz という見出しの下に表示されます。 ネットワーク・パケット・サイズの設定の詳細については、『システ ム管理ガイド』を参照してください。 8 第1章 isql ユーティリティの使用 入出力ファイル -i および -o オプションで、コマンド・ラインに入出力ファイルを指定 できます。 isql には、出力のためのフォーマット・オプションはありません。ただ し、-n オプションを使用すれば、isql プロンプトを削除でき、また、他 のツールを使用して出力を再フォーマットすることもできます。 -e オプションを指定すると、isql は入力内容を出力にエコーします。 結果の出力ファイルには、クエリとその結果の両方が含まれます。 UNIX コマンド・ラインのリダイレクト UNIX のリダイレクト記号 "<" と ">" の機能は、次のように -i オプ ションと -o オプションの機能に似ています。 isql -Usa < input > output 次のように isql をダイレクトして端末から入力を取得できます。 isql -Usa -Ppassword -Sserver_name << EOF > output use pubs2 go select * from table go EOF "<<EOF" は、"EOF" 文字列が来るまで端末から入力を取得するよう に、isql に指示します。"EOF" は任意の文字に置き換えることができ ます。同様に次の例では、[Ctrl + d] によって入力の終了を示してい ます。 isql -Usa << > output 9 入出力ファイル 10 第 2 章 bcp を使用した Adaptive Server とのデータの転送 この章では、バルク・コピー・ユーティリティである bcp を使用 した、Adaptive Server とオペレーティング・システム・ファイ ルとの間でのデータの転送方法を説明します。この章の内容は次 のとおりです。 bcp の構文の詳細については、 「bcp」(96 ページ ) を参照してくだ さい。 11 データの転送方法 データの転送方法 Adaptive Server データベースとの間でデータを転送するには、次の ような方法があります。 • bcp をオペレーティング・システムからスタンドアロン・プログ ラムとして使用する方法。この方法については、この章で説明し ます。 • Client-Library を使用して、バルク・ライブラリ・ルーチンを呼 び出す方法。 Client-Library の詳細については、 『Open Client/Server Common Libraries リファレンス・マニュアル』を参照してください。 bcp を使用したデータのインポートとエクスポート Transact-SQL コマンドではデータをバルク転送できないため、大量の データを転送する場合は bcp を使用します。bcp では、以下の操作が できます。 • 別のデータベース管理システムのレコードなど、以前に別のプロ グラムで使用していたデータのインポート。これが、bcp の最も 一般的な使用法です。 bcp を使用する前に、インポートするレコードを入れるファイル を作成する必要があります。基本的な手順は次のとおりです。 a 転送するデータをオペレーティング・システム・ファイルに 変換します。 b bcp をオペレーティング・システムのコマンド・ラインから 実行します。 12 • Adaptive Server 間、またはオペレーティング・システム・ファイ ルを生成する他のデータ・ソースと Adaptive Server との間での テーブルの移動。 • ビューからのデータのコピー・アウト。bcp を使用してビューの 外へデータをコピーするための構文の詳細については、「bcp」 (96 ページ ) を参照してください。 第2章 • bcp を使用した Adaptive Server とのデータの転送 ビューからのデータのコピー・アウト。bcp_dce を使用して ビューの外へデータをコピーするための構文の詳細については、 「bcp_dce」(114 ページ ) を参照してください。 注意 bcp を使用してビューの中へデータをコピーすることはでき ません。 • スプレッドシート・プログラムなどの他のプログラムで使用する ためのデータの転送。データを転送する基本的な手順は次のとお りです。 a bcp は、データを Adaptive Server からオペレーティング・シ ステム・ファイルに移動し、他のプログラムはそこからデー タをインポートします。 b そのプログラムがデータを使用し終わったら、そのデータを オペレーティング・システム・ファイルにコピーします。そ れから bcp を使用して Adaptive Server にコピーします。 Adaptive Server は、「ターミネータ ( カラムを区切るのに使用する文 字 )」かフィールドの長さがデータ・ファイルに指定されていれば、 任意の文字フォーマットまたはバイナリ形式のデータを受け入れるこ とができます。 bcp は次のように動作するため、転送において使用されるテーブルの 構造が同一である必要はありません。 • ファイルからインポートするときには、データを既存のデータ ベース・テーブルに追加します。 • ファイルにエクスポートするときには、ファイルの既存の内容を 上書きします。 転送が完了すると、bcp は正常にコピーされたローの数、およびパ フォーマンス情報をレポートします。 13 bcp を使用するための稼働条件 bcp を使用するための稼働条件 bcp ユーティリティを使用するには、以下の基本的なデータ情報を渡 し、転送するデータとそのデータにアクセスするためのコマンドを準 備する必要があります。 必要な基本情報 Adaptive Server とオペレーティング・システム・ファイルとの間で データを転送するには、次の情報を入力する必要があります。 • データベースおよびテーブルかビューの名前 • オペレーティング・システム・ファイルの名前 • 転送の方向 ( コピー・インまたはコピー・アウト ) 他にも、bcp を使用して、記憶タイプ、記憶長、および各カラムの ターミネータを任意に変更できます。 データをコピーするのに必要なパーミッション bcp を使用するには、Adaptive Server アカウントと、転送に使用する データベース・テーブルまたはビューおよびオペレーティング・シス テム・ファイルに対する所定のパーミッションが必要です。 14 • テーブルにデータをコピー・インするには、そのテーブルに対す る insert パーミッションが必要です。 • テーブルをオペレーティング・システム・ファイルにコピーする には、次のテーブルに対する select パーミッションが必要です。 • コピーするテーブル • sysobjects • syscolumns • sysindexes 第2章 bcp を使用した Adaptive Server とのデータの転送 転送前の作業 bcp in を使用するには、コマンドおよび転送するデータを準備する必 要があります。 • 高速または低速 bcp を使用するには、select into/bulkcopy/pllsort を true に設定します。たとえば、pubs2 データベースに対してこの オプションを設定するには、次のように入力します。 sp_dboption pubs2, "select into/bulkcopy/pllsort", true 詳細については、 「bcp のモード」(16 ページ ) を参照してください。 • 高速 bcp を使用するには、ターゲット・テーブルのインデックス およびトリガを削除します。この作業の詳細については、 「bcp の パフォーマンスの問題」(17 ページ ) を参照してください。 15 bcp のモード bcp のモード bcp in には高速モードと低速モードの 2 つのモードがあります。これ ら 2 つのモードの違いを表 2-1 に示します。 表 2-1: 高速モードと低速モードの bcp の特性 bcp の タイプ 低速 高速 特性 テーブルに挿入される各ローのログを取る。1 つ以上のインデッ クスやトリガのあるテーブルに使用。 ページ割り付けのログだけを取る。インデックスやトリガのない テーブルに、可能なかぎり高速にデータをコピーする。 実際のコピー・タスクにどちらの bcp モードが最適かは、次の情報に 基づいて判断します。 • データのコピー先となるテーブルのサイズ • コピーするデータの量 • テーブル内のインデックスの数 • インデックスを再作成するのに使用できる予備データベース・デ バイス領域の量 また、高速 bcp を使用した場合はパフォーマンスが向上し、低速 bcp を使用した場合はデータのリカバリ性が向上することにも注意してく ださい。 16 第2章 bcp を使用した Adaptive Server とのデータの転送 bcp のパフォーマンスの問題 テーブルのインデックスとトリガを保持した場合、バルク・コピー・ ユーティリティには、低速 bcp を使用することになります。しかし、 低速 bcp ではトランザクション・ログがすぐにいっぱいになってしま います。 • 大量のローをコピーする場合に低速 bcp を使用すると、パフォー マンスは大幅に低下し、ログ領域の所要量はかなり大規模なもの になります。 • きわめて大きなテーブルの場合には、詳細なログの作成によって処 理速度が大幅に低下するため、低速 bcp は使用しないでください。 bcp のパフォーマンスをさらに向上させるには、次のような方法があ ります。 • 分割されたテーブルを使用する。分割されたテーブルに対して複数 の bcp セッションを使用することにより、データのコピーに必要な 時間を大幅に削減できます。ただし、このようなパフォーマンスの 向上は、低速 bcp よりも高速 bcp において顕著となります。 • bcp を並列モードで使用することにより、パフォーマンスは大幅 に向上します。パラレル・バルク・コピーを使用すると、パー ティション間でバランスのとれたデータ配分ができます。パラレ ル・バルク・コピーの使用に関する詳細については、 「パラレル・ バルク・コピーを使った特定の分割へのデータのコピー」(23 ページ ) を参照してください。 高速 bcp および低速 bcp の使用 テーブルにインデックスやトリガがあると、転送の速度が大きく影響 を受けます。 • インデックスやトリガのあるテーブルにコピー・インする場合、 bcp は自動的に低速モードで動作し、データの挿入をトランザク ション・ログに記録します。このように挿入をログに記録する と、トランザクション・ログは非常に大きくなります。 17 bcp のパフォーマンスの問題 データが大きくなりすぎないようにし、障害発生時にデータベー スを完全な形にリカバリできるようにするには、dump transaction を使ってログのバックアップを取ります。 注意 bcp はターゲット・テーブル上のトリガを起動しません。 • 処理時間を短縮するために、高速 bcp はデータの挿入をトランザ クション・ログに記録せず、ページ割り付けだけを記録します。 データをコピー・インする場合、データベース・テーブルにイン デックスもトリガもなければ、bcp は最高速度で機能します。 しかし、高速 bcp を使用してデータの挿入を行った場合、データ の挿入はログに記録されないため、トランザクション・ログをデ バイスにバックアップ (dump) することはできません。変更内容 がログに記録されていないため、バックアップ・データが存在せ ず、データをリカバリすることはできません。バックアップ要求 (dump transaction) を行うと、エラーメッセージが表示され、代わ りに dump database を使用するように指示されます。この制約 は、dump database が正常に終了するまで効力があります。 高速 bcp を使用する ようにデータベースを 設定する ユーザが高速 bcp を使用してデータをコピー・インできるようにする には、システム管理者またはデータベース所有者がまず、 sp_dboption システム・プロシージャを使用して、ターゲット・テー ブルがあるデータベースに対して select into/bulkcopy/pllsort を true に設定する必要があります。このオプションが false に設定されてい る場合に、ユーザがインデックスまたはトリガを持たないテーブルに 高速 bcp を使用してデータをコピーしようとすると、Adaptive Server はエラー・メッセージを表示します。 注意 インデックスかトリガを持っているテーブルにおいてデータをコ ピー・アウトまたはコピー・インするときには、select into/bulkcopy/pllsort オプションを true に設定する必要はありません。 インデックスまたはトリガのあるテーブルはつねに低速 bcp でコピー され、すべての挿入がログに記録されます。 次の表に、データをコピー・インする場合にどちらのモードの bcp が 自動的に使用されるか、select into/bulkcopy/pllsort オプションをどの ように設定できるか、そしてモードとオプションをどのように組み合 わせればデータ転送やバックアップが可能かを示します。 18 第2章 bcp を使用した Adaptive Server とのデータの転送 表 2-2: select into/bulkcopy/pllsort オプションを使用した高速 bcp と低速 bcp select into/bulkcopy/pllsort true / on false / off 高速 bcp ターゲット・テーブルにイ ンデックスもトリガもない 場合 転送が行われる 高速 bcp は自動的に キャンセル 低速 bcp ターゲット・テーブルにイ ンデックスまたはトリガが ある場合 デバイスへの dump transaction は不可 転送が行われる 転送が行われる dump transaction が実 dump transaction が実 行可能 行可能 デフォルトでは、新規に作成されたデータベースの select into/bulkcopy/pllsort オプションは false ( オフ ) に設定されています。 このデフォルト設定を変更するには、model データベースでこのオプ ションをオン (true に設定 ) に切り替えてください。 インデックスとトリガ の削除 大量のローをコピーする場合、データ・サイズの 1.2 倍の領域が必要 であり、サーバにはクラスタード・インデックスを再構成するための 十分な領域が必要となります。 • 十分な領域がある場合は、drop index および drop trigger を使用し て、事前にインデックスとトリガをすべて削除できます。 • データをソートし、インデックスを構築するために必要な領域が サーバにない場合は、低速 bcp を使用してください。 高速 bcp を使ってデータをコピーする手順 表 2-3 では、高速 bcp を使用してデータを Adaptive Server にコピー・ インする手順を説明します。 表 2-3: 高速 bcp を使ってデータをコピーする手順 手順 sp_dboption を使用し、select into/bulkcopy/pllsort を true に設定する。 変更されたデータベースで checkpoint を実行する。 テーブルのインデックスとトリガを再構築するのに十 分な空き領域があることを確認する。 テーブルのインデックスとトリガを削除する。 テーブルに対する insert パーミッションがあることを 確認する。 bcp でコピーを行う。 作業者 システム管理者または データベース所有者 テーブル所有者 テーブル所有者によって 許可されたユーザ insert パーミッションを 持つユーザ 19 bcp のパフォーマンスの問題 手順 インデックスとテーブルを再構築する。 必要に応じて sp_dboption をリセットし、変更された データベースで checkpoint を実行する。 dump database を使用して、新しく挿入されたデータ のバックアップを取る。 作業者 テーブル所有者 システム管理者または データベース所有者 システム管理者、オペ レータ、またはデータ ベース所有者 ストアド・プロシージャまたはクエリを実行して、新 しくロードされたデータがルールに違反していないか どうかを確認する。 テーブル所有者または ストアド・プロシージャ 所有者 分割されたテーブルへのバルク・コピー ある条件のもとでは、分割されたテーブルに対して複数の bcp セッ ションを実行することによって bcp のパフォーマンスを大幅に向上さ せることができます。 テーブルを分割するとロックの競合が減り、I/O が複数のデバイスに 分散するため、挿入のパフォーマンスが向上します。分割されたテー ブルで bcp のパフォーマンスが向上するのは、主に I/O が分散するこ とによります。 ガイドライン 分割されたテーブルに対して bcp セッションを実行する場合は、次の 点を考慮してください。 20 • テーブルの分割によってパフォーマンスが向上するのは、テーブ ルへのバルク・コピー・インを行った場合だけです。 • 低速 bcp のパフォーマンスは、テーブルを分割しても向上しませ ん表 2-3(19 ページ ) で説明したように、すべてのインデックスと トリガを削除し、高速 bcp を使用してください。 • 複数の bcp セッションを実行すると、すぐにネットワーク・トラ フィックがボトルネックとなることがあります。このボトルネッ クを防ぐには、可能なかぎり Adaptive Server にローカル接続し ます。 第2章 bcp を使用した Adaptive Server とのデータの転送 1 つの分割にデータをコピーする方法 分割されたヒープ・テーブルにデータをコピーするには、次の 2 とお りの方法があります。 • コピー先の分割は問わずに、ランダムにデータをコピーする方法 • 特定の分割にデータをコピーする方法 テーブルにクラスタード・インデックスがある場合、bcp は低速 モードで実行され、このインデックスによってローの配置が制御 されます。 データを分割へランダムにコピーする 複数の bcp セッションを使用するときに、分割されたテーブルにラン ダムにデータをコピーするには、次の手順に従います。 1 システムで必要なだけの数の分割と物理デバイスを持つテーブル を設定します。 詳細については、 『パフォーマンス&チューニング・ガイド』 、お よびこのマニュアルの「パラレル・バルク・コピーを使った特定 の分割へのデータのコピー」(23 ページ ) を参照してください。 2 Adaptive Server が複数の bcp セッションのサポートに十分なロッ クを持つよう設定されていることを確認します。ロックの設定に 関する詳細については、 『システム管理ガイド』を参照してくだ さい。 3 テーブルのトリガとインデックスを削除し、高速 bcp を使用でき るようにします。 「高速 bcp および低速 bcp の使用」(17 ページ ) にある指示に従っ てください。 注意 低速 bcp を使用する場合、トリガとインデックスを削除して もパフォーマンスはそれほど改善されません。また、テーブルに インデックスがある場合には、インデックス・ページのデッド ロックが発生することがあります。 4 同時に使用する bcp セッションの数と同じ数で同じサイズになる ように、bcp 入力ファイルを分割します。 また、-Ffirst_row および -Llast_row オプションを使用し、各「入 力ファイル」の先頭と終端を指定することもできます。 21 bcp のパフォーマンスの問題 5 個別のファイルを使用して bcp セッションを並行に実行します。 できればローカルの Adaptive Server マシン上で行ってください。 たとえば、UNIX プラットフォームでは異なるシェル・ウィンド ウ上で異なるセッションを実行できます。また、個々の bcp セッ ションをバックグラウンドで開始することもできます。 分割されたテーブルへのデータのコピーに関する詳細については、 『パフォーマンス&チューニング・ガイド』を参照してください。 dbcc checktable と sp_helpsegment を使 用した bcp セッショ ンのモニタリング bcp セッションがどの分割を使用するかを指定しない場合、Adaptive Server は複数の bcp セッションをテーブルの使用可能な分割にランダ ムに割り当てます。このようにランダム割り当てが行われた場合は、 挿入が均等に分散されているかどうかを判断するために分割をモニタ してください。 • 周期的に dbcc checktable コマンドを実行し、各分割の総ページ数 をチェックします。 • あるいは、sp_helpsegment または sp_helpartition を使用します。 これらのコマンドはデータベース・オブジェクトをロックしない で同じチェックを行います。 dbcc checktable の詳細については、『システム管理ガイド』を参 照してください。sp_helpsegment および sp_helpartition の詳細に ついては、『Adaptive Server リファレンス・マニュアル』を参照 してください。 テーブルの分割に関する詳細については、 『パフォーマンス& チューニング・ガイド』を参照してください。 ページ割り付けを増加 することによるロギン グの減少 高速 bcp を使用する場合、各 bcp in バッチではページ・マネージャが 1 つ以上のエクステントを割り付ける必要が生じます。また、このよ うな割り付けごとに 1 つのログ・レコードが生成されます。 設定パラメータ number of preallocated extents を使い、Adaptive Server がページ・マネージャを使って割り付けるエクステントの数を 指定します。 22 • 設定パラメータ number of preallocated extents の有効な値は 0 ~ 31 であり、デフォルト値は 2 です。 • 値を変更するには、Adaptive Server を再起動します。 • 大規模な bcp オペレーションを行うときには、この数を増やし、 ページ割り付けでログがいっぱいになるのを防いでください。 第2章 • bcp を使用した Adaptive Server とのデータの転送 大規模なエクステント割り付けが行われないようにするには、こ の値を 0 に設定します。これにより、ページ・マネージャは単一 ページ割り付けだけを実行します。 Adaptive Server は実際に必要なページより多くのページを割り付け る場合があるため、領域が限られている場合は、この値を小さくして おいてください。これらのページはバッチが終了するときに割り付け が解除されます。 詳細については、 『システム管理ガイド』を参照してください。 パラレル・バルク・コピーを使った特定の分割へのデータのコピー 特定の分割へデータを並列にコピーするには、パラレル・バルク・コ ピーを使用します。パラレル・バルク・コピーにより、bcp セッショ ン実行時のパフォーマンスは飛躍的に向上します。これは、大規模な バルク・コピー・ジョブを複数のセッションに分割し、同時に実行で きるからです。 パラレル・バルク・コピーを使用するには、次の規則に従います。 • • コピー先のテーブルは分割してください。 • sp_helpartition を使用してテーブルの分割数を参照します。 • テーブルが分割されていない場合は、alter table ... partition を 使用してテーブルを分割します。 次のような理由により、コピー先のテーブルにはインデックスを 付けないでください。 • テーブルにクラスタード・インデックスがある場合、そのイ ンデックスがデータの物理的な配置を決定するため、bcp コ マンドの分割指定は無視されます。 • インデックスがある場合、bcp は自動的に高速バルク・コピー・ モードではなく低速バルク・コピー・モードとなります。 • テーブルにノンクラスタード・インデックスがある場合、パラレ ル・バルク・コピーによってインデックス・ページにデッドロッ クが発生しやすくなります。 • パフォーマンスを向上させるために、各分割を物理的にパーティ ションされたディスクに設定してください。 • コピー先のテーブルを分割してから、データベースにデータをコ ピーしてください。 23 bcp のパフォーマンスの問題 • パラレル・バルク・コピーでは、複数のオペレーティング・シス テムのファイルからテーブルにコピー・インすることができま す。そのためには、次の構文を使用します。 bcp tablename :partition_number in file_name また、-Ffirst_row フラグと -Llast_row フラグを使い、複数のパラ レル・バルク・コピー・セッションのそれぞれに対して、同じホ スト・ファイルの最初と最後のローを指定することもできます。 パラレル・バルク・コピーのプロセスを図 2-1 に示します。 図 2-1: パラレル・バルク・コピーを使用した分割したテーブルへのデータ のコピー 分割されたテーブル 小さいファイルに 4 分割 された大きいファイル ファイル 1 bcp mydb..bigtable:1 in file1 & 分割 1 へ コピー ファイル 2 bcp mydb..bigtable:2 in file2 & 分割 2 へ コピー ファイル 3 bcp mydb..bigtable:3 in file3 & 分割 3 へ コピー ファイル 4 bcp mydb..bigtable:4 in file4 & 分割 4 へ コピー テーブルの分割に関する詳細については、 『パフォーマンス&チュー ニング・ガイド』を参照してください。 注意 パラレル・バルク・コピーを使ってデータをコピー・アウトする 場合は、bcp が使うパーティションを指定できません。 bcp in とロック bcp を使用してテーブルにコピーする場合、特にパラレル bcp を使っ てテーブルにコピーする場合には、コピー・プロセスで次のロックが 必要となります。 24 • テーブルへの意図的な排他ロック • 各データ・ページへの排他ページ・ロック 第2章 • bcp を使用した Adaptive Server とのデータの転送 インデックス・ページへの排他ロック ( インデックスがある場合 ) 巨大なテーブルをコピー・インする場合、特に分割されたテーブルへ の同時コピーを行う場合には、多数のロックが必要となります。 ロックの不足を防ぐには、次のような方法があります。 • ロックの数を増やします。 • 必要なロックの数を見積るには、次の式を使用します。 ( 同時に実行されるバッチ数 ) * ( バッチごとのロー数 / (2016/ ローの長さ )) • テーブルのローの長さを確認するには、次のクエリを実行し ます。 1> select maxlen 2> from sysindexes 3> where id = object_id("tablename") and (indid = 0 or indid = 1) ロック数の設定の詳細については、『システム管理ガイド』を参 照してください。 • より小さいバッチをコピーするには、-bbatchsize フラグを使用し てください。デフォルトのバッチ・サイズは 1000 ローです。 • 同時に実行するバッチ数を減らします。 パラレル・バルク・コピーの方法 パラレル・バルク・コピーを使ってデータをコピー・インするには、 次の方法のいずれかを使用します。 • バックグラウンドで複数の bcp セッションを起動します。この場 合、次のことを必ず行ってください。 • コマンド・ラインでパスワードを指定する。 • ネイティブ・モード、文字モード、またはフォーマット・ ファイルを使用する。 bcp は、テーブルの分割と同じ回数だけ起動できます。 • フォーマット・ファイルを作成します。 a 対話型モードで bcp を起動します。 b プロンプト表示に答えます。 c そのプロンプトに対する応答を保管するフォーマット・ファ イルを作成します。 25 bcp のパフォーマンスの問題 • d コピーが始まるときに処理をバックグラウンドに移します。 e 次の bcp コマンドを発行し、最初の bcp コマンドで作成した フォーマット・ファイルを指定します。 複数のウィンドウで bcp セッションを起動します。 パラレル・バルク・コピーの構文 パラレル・バルク・コピーの構文は次のとおりです。 bcp table_name[:partition_number] in file_name -Pmypassword 各パラメータの意味: • table_name はデータのコピー先となるテーブルの名前です。 • partition_number はコピー先のパーティション番号です。 • file_name はコピーするホスト・ファイルです。 • mypassword はパスワードです。 分割されたテーブルへのパラレル・バルク・コピーの使用 ソートされたデータを特定の分割へ並列にコピーするには、次の手順 に従います。 • テーブル名の後にコロン (:) と分割番号を追加し、分割を指定しま す。次に例を示します。 publishers:10 注意 ここで指定する分割は、bcp コマンドを発行するときにはす でに存在していなければなりません。 • ソートされたデータを個別のファイルに分割します。または、ホ スト・ファイルの最初のロー (-Ffirst_row) と最後のロー (-Llast_row) をそれぞれ指定して「ファイル」の境界を示します。 • テーブルの分割の数に注意してください。起動できるパラレル・ バルク・コピーのセッション数は、このテーブルの分割数によっ て制限されます。 たとえば、テーブルに 4 つの分割があり、5 つのパラレル・バル ク・コピー・ジョブを実行した場合は、最初の 4 つのジョブだけ が並列に実行され、5 番目のジョブは最初の 4 つのジョブのいず れかが終了するまで実行されません。 26 第2章 bcp を使用した Adaptive Server とのデータの転送 bcp は、それぞれのファイル、またはロー・セットをそれぞれの分割 へコピーします。たとえば、パラレル・バルク・コピーを使用して、 ソート済みデータを 4 つのファイルから mydb..bigtable の 4 つの分割へ コピーするには、次のように入力します。 bcp bcp bcp bcp mydb..bigtable:1 mydb..bigtable:2 mydb..bigtable:3 mydb..bigtable:4 in in in in file1 file2 file3 file4 -Pmypassword -Pmypassword -Pmypassword -Pmypassword -c -c -c -c & & & & パラレル・バルク・コピーと IDENTITY カラム パラレル・バルク・コピーを使用するとき、IDENTITY カラムがボト ルネックを発生させることがあります。bcp は、データの読み込み時 に IDENTITY カラムの値を生成すると同時に各ローの IDENTITY カ ラムの最大値も更新します。これが、パラレル・バルク・コピーを使 用することによるパフォーマンスの向上に悪影響を及ぼすことがあり ます。 このボトルネックを避けるためには、各セッションの IDENTITY 開始 ポイントを明示的に指定します。 ソート順の保持 IDENTITY 開始ポイントを明示的に指定しないで、ソートされたデー タをテーブルへコピーした場合、bcp は IDENTITY カラムの値をソー ト順に生成しないことがあります。この場合、パラレル・バルク・コ ピーでは情報をすべての分割へ同時に読み込み、そのデータの読み込 み時に、IDENTITY カラムの値を更新します。 bcp 文に開始ポイントを明示的に指定しなければ、図 2-2 に示すよう に IDENTITY カラム番号が生成されます。 27 bcp のパフォーマンスの問題 図 2-2: ソート順による IDENTITY カラムの生成 分割 1 分割 3 分割 2 ID カラム ID カラム ID カラム 分割 4 ID カラム 100 A 102 C 103 F 101 H 104 A 106 C 105 F 110 H 107 B 109 C 111 F 113 I 108 B 112 D 116 G 115 J 114 B 117 E 119 G 118 J このテーブルの IDENTITY カラム番号の最大値は 119 ですが、この順 序はここでは無意味です。 Adaptive Server によってユニークな IDENTITY カラムの値を生成し たい場合は、-g または -E パラメータを使用して bcp を起動してくだ さい。 コマンド・ラインでの開始ポイントの指定 コマンド・ラインでセッションの IDENTITY 開始ポイントを指定する には、-gid_start_value フラグを使用します。 -g パラメータを使用すると、Adaptive Server は、ローごとにテーブル の IDENTITY カラムの最大値をチェックしたり更新したりしないで、 bcp セッションで使用される IDENTITY カラム値のシーケンスを生成で きます。この場合、Adaptive Server は IDENTITY カラムの最大値を チェックする代わりに、各バッチの終わりに最大値を更新します。 警告 ! 重複した IDENTITY 値の範囲を指定すると、重複した IDENTITY の値を生成することになります。詳細については、後の説 明を参照してください。 IDENTITY の開始値を指定するには、次のように入力します。 bcp [-gid_start_value] たとえば、100 ローある 4 つのファイルをコピー・インするには、次 のように入力します。 28 第2章 bcp bcp bcp bcp bcp を使用した Adaptive Server とのデータの転送 mydb..bigtable mydb..bigtable mydb..bigtable mydb..bigtable in in in in file1 file2 file3 file4 -g100 -g200 -g300 -g400 しかし、-g パラメータを使用しても、IDENTITY カラムの値がユニー クとなることが保証されるわけではありません。この値が確実にユ ニークとなるようにするためには、以下のことが必要です。 • 入力ファイル中のローの数と既存の値の最大値を取得します。こ の情報をもとに -g パラメータで開始値を設定し、生成される値の 範囲が重複しないようにします。 前述の例では、いずれかのファイルのローが 100 以上あった場 合、IDENTITY の値が次の 100 ローと重なり、重複した IDENTITY 値が生成されてしまいます。 • また、IDENTITY の値と重複するデータをほかの誰かが挿入する ことのないようにしてください。 データ・ファイルを使用した開始ポイントの指定 IDENTITY 開始値をデータ・ファイルから明示的に設定するには、-E パラメータを使用します。 -E パラメータを使用すると、bcp はその値をデータ・ファイルから取 得し、サーバへ送ります。サーバは、受け取った値をテーブルに挿入 します。挿入されるローの数が IDENTITY カラム値の最大値を超える 場合、Adaptive Server はエラーを返します。 29 bcp オプションの使用 bcp オプションの使用 この項では、bcp 構文のより複雑なオプションについて説明します。構 文の完全な説明については、 「bcp」(96 ページ ) を参照してください。 デフォルト・フォーマットの使用 ネイティブ・オプションまたは文字オプションを使用した場合、bcp は非対話型で動作し、Adaptive Server のパスワード以外の情報の入 力は要求しません。 ネイティブ・フォーマット bcp pubs2..publishers out pub_out -n pub_out の内容を次に示します。 0736^MNew Age Books^FBoston^BMA0877^PBinnet & Hardley^J Washington^BDC1389^TAlgodata Infosystems^HBerkeley^BCA bcp は、char(4) データ型の pub_id を除く各フィールドの前に、その フィールド内のデータ長に相当する ASCII 文字を付けています。たと えば、"New Age Books" は 13 文字で、^M (Ctrl + M) は ASCII で 13 です。 pub_out ファイルに保管されているすべてのテーブル・データは、 char データまたは varchar データであり、したがって人間が判読でき る文字です。数値データが入っているテーブルの場合、bcp はオペ レーティング・システムのデータ表示フォーマットでファイルに情報 を書き込むので、人間が判読できるものではありません。 注意 bcp ユーティリティは、NT から UNIX へのコピーなど、異なる オペレーティング・システムからのネイティブ・フォーマットのデー タのコピーはサポートしていません。bcp を使用して、あるオペレー ティング・システムから別のオペレーティング・システムへファイル をコピーする場合は、-c フラグを使用してください。 警告 ! ネイティブ・フォーマットの場合、bcp でロー・ターミネータ・ パラメータ (-t) またはフィールド・ターミネータ・パラメータ (-r) は 使用しないでください。予期しない結果となったり、データが破損す る可能性があります。 30 第2章 bcp を使用した Adaptive Server とのデータの転送 文字フォーマット 文字フォーマット (-c) では、すべてのカラムに char データ型が使用さ れます。このフォーマットでは、各ローのフィールド間にタブが挿入 され、各ローの終わりに改行ターミネータが挿入されます。 たとえば、次のコマンドは、publishers テーブルから pub_out ファイル に文字フォーマットでデータをコピー・アウトします。 bcp pubs2..publishers out pub_out -c このコマンドによる bcp 出力は次のようになります。 0736 0877 1389 New Age Books Boston MA Binnet & Hardley Washington DC Algodata Infosystems Berkeley CA コマンド・ラインでのターミネータの変更 ターミネータは、データ・フィールド間を区切る文字 ( フィールド・ ターミネータ ) です。ロー・ターミネータは、テーブルまたはファイ ルの最後のフィールドのフィールド・ターミネータです。ターミネー タをコマンド・ラインで変更するには、文字フォーマット・オプショ ン (-c) とともに、コマンド・ライン・オプションの -tfield_terminator と -rrow_terminator を使用します。 次の例では、フィールド・ターミネータとしてカンマ (,) を、ロー・ ターミネータとして改行 (\r) を使用しています。 bcp pubs2..publishers out pub_out -c -t , -r \\n 使用しているオペレーティング・システムのコマンド・シェルで必要 な場合は、バックスラッシュを「エスケープ」してください。 この bcp コマンド・ラインからは、次のような情報が出力されます。 0736,New Age Books,Boston,MA 0877,Binnet & Hardley,Washington,DC 1389,Algodata Infosystems,Berkeley,CA 注意 -t オプションと -r オプションを使用すれば、文字オプション (-c) を使用しないでデフォルト・ターミネータを変更できます。 31 デフォルトの変更:対話型 bcp デフォルトの変更:対話型 bcp ネイティブ・フォーマット (-n) または文字フォーマット (-c) を指定し ない場合、bcp は、次のような情報の入力を要求するプロンプトを表 示します。 • ファイル記憶タイプ • プレフィクス長 • ターミネータ • フィールド長 (char または binary として保管されるフィールドの 場合 ) これらのプロンプトに対してデフォルト値で応答すると、ネイティ ブ・フォーマットを使用した場合と同じ結果が得られ、データをデー ターベースからコピー・アウトし、そのあとで Adaptive Server に簡 単に再ロードできます。 他のプログラムで使用するためにデータを Adaptive Server に、また は Adaptive Server からコピーする場合は、そのソフトウェアに必要 なフォーマットに基づいて、プロンプトに応答してください。 これら 4 つのプロンプトによって非常に柔軟なシステムが作成され、 他のソフトウェアからファイルを読み込んだり、ほとんどまたはまっ たく編集を行わずに他の多くのデータ・フォーマットに準拠するファ イルを作成したりできます。 以降の項では、これらのプロンプトについて説明し、プロンプトに対 する応答がデータにどのように作用するかを説明します。 ファイル記憶タイプ ファイル記憶タイプのプロンプトにより、ファイルへのデータの保管 方法を選択できます。データはファイルに以下のデータ型としてコ ピーできます。 • データベース・テーブルのデータ型 • 文字列型 • 暗黙の変換がサポートされているデータ型 注意 bcp は、ユーザ定義データ型をベース・タイプとしてコピー します。 32 第2章 bcp を使用した Adaptive Server とのデータの転送 表 2-4 に、各 Adaptive Server データ型のデフォルト記憶タイプと bcp で有効な省略形を示します。 • 最も凝縮された記憶領域の場合には、デフォルト値を使用してく ださい。 • 文字ファイルの場合には、char を使用します。 • date 記憶タイプは、ホスト・オペレーティング・システム・ フォーマットの日付ではなく、Adaptive Server 内部記憶フォー マットの datetime です。 • timestamp データは、binary(8) として扱われます。 表 2-4 では、角かっこ [] はワードの頭文字またはワードの初めから何 文字かを使用できることを示します。たとえば、"bit" の場合、"b"、 "bi"、"bit" のいずれも使用できます。 表 2-4: bcp のファイル記憶領域データ型 テーブルでのデータ型 char、varchar 記憶タイプ c[har] text int T[ext] i[nt] smallint tinyint s[mallint] t[inyint] float money f[loat] m[oney] bit datetime b[it] d[atetime] binary、varbinary、timestamp image x I[mage] smalldatetime real smallmoney D r M numeric decimal n e bcp を対話形式で使用しているときにこのリストを表示するには、 "Enter the file storage type" プロンプトに対して疑問符 (?) を入力して ください。 プロンプトに表示される推奨値がデフォルトです。応答によって、出 力ファイルにデータがどのように保管されるかが決まります。データ ベース・テーブルのカラムのタイプを示す必要はありません。 33 デフォルトの変更:対話型 bcp 暗黙に変換可能な型でも char 型でもないデータ型を入力すると、bcp は失敗します。たとえば、int データに smallint を使用できない場合 があります ( オーバフロー・エラーになる可能性があります ) が、 smallint には int を使用できます。 文字データ型以外のデータ型をデータベース型として保管する場合、 bcp はデータを人間が判読できる形式ではなく、ホスト・オペレー ティング・システムの Adaptive Server 内部データ表示フォーマット でファイルに書き込みます。 プレフィクス長 デフォルトでは、bcp は、可変長の各フィールドの先頭にフィールド の長さを示す 1 バイト以上の文字列を付加します。このプレフィクス により、最大限に凝縮されたファイル記憶が可能になります。 プロンプトのデフォルト値は、最も効率のよいプレフィクス長を示し ています。 34 • 固定長フィールドの場合、プレフィクス長は 0 にしてください。 • 255 バイト以下のフィールドの場合、デフォルトのプレフィクス 長は 1 です。 • text データ型または image データ型の場合、デフォルトのプレ フィクス長は 4 です。 • binary データ型と varbinary データ型が char 記憶タイプに変換さ れる場合、デフォルトのプレフィクス長は 2 です。これは、テー ブル・データが 1 バイトごとに 2 バイトのファイル記憶領域を必 要とするためです。 • binary、varbinary、および image データのプレフィクスと長さは 偶数にしてください。Adaptive Server はこれらのデータを偶数の 16 進数として保管するため、これによってデータの一貫性が保た れます。 • null 値が使用可能なデータ・カラムの場合、各ローのデータの長 さを表示するには、0 以外のプレフィクス長またはターミネータ を使用してください。bcp は、このようなカラムをすべて可変長 カラムとみなします。これには、通常は固定長とみなされる整数 データ型のカラムも含まれます。 • カラムの前にプレフィクスがないデータの場合は、プレフィクス 長を 0 にしてください。 第2章 bcp を使用した Adaptive Server とのデータの転送 ターミネータを入力しなければ、bcp は次のプロンプト "length" で指 定された長さになるまで、保管される各フィールドにスペースを埋め 込みます。 プレフィクス長はネイティブ・フォーマットの整数であるため、結果 のホスト・ファイルには印刷できない文字も含まれます。そのため、 人間が判読できない文字を扱う通信プログラムを使用しなければ、ホ スト・ファイルを印刷または送信することはできません。 プレフィクス長の詳細については、表 2-7(42 ページ) を参照してくだ さい。 フィールド長 データをコピー・アウトするときには、ほとんどの場合、記憶長には bcp のデフォルト値を使用してください。 注意 この項でいう「長さ」や「記憶長」とは Adaptive Server の フィールド長ではなく、オペレーティング・システム・ファイルのこ とを指します。 • Adaptive Server に再ロードするファイルを作成する場合、デフォ ルトのプレフィクスと長さを使用すると、必要な記憶領域は最小 限に保たれます。 • 人間が判読できるファイルを作成する場合にも、デフォルト長を 使用すれば、データのトランケーションや、bcp 障害の原因とな るオーバフロー・エラーの発生を防ぐことができます。 別の値を入力すると、デフォルト長を変更できます。そのため、転送 するデータについて把握しておく必要があります。他のソフトウェア から文字データをコピー・インする場合、ソース・ファイルを十分に 調べてから長さの値を選択してください。 注意 記憶タイプが文字データ型以外の場合、bcp はデータをオペレー ティング・システムのネイティブ・データ表示フォーマットで保管 し、長さの入力を要求するプロンプトは表示しません。 bcp は文字データ以外のデータを文字記憶タイプに変換するときに、 datetime データをトランケートしたり数値データのオーバフローを発 生させたりしない、データを格納するのに十分な大きさのデフォル ト・フィールド長を使用します。 35 デフォルトの変更:対話型 bcp • デフォルト長は、Adaptive Server データ型の最も長い値を表示す るのに必要なバイト数です。 表 2-5 に、文字記憶タイプにデータを変換するときのデフォルト のフィールド長をリストします。 表 2-5: 文字データ型以外のデータ型から文字データ型への変換におけるデ フォルトのフィールド長 データ型 int smallint 36 tinyint float デフォルト・サイズ 12 バイト 6 バイト 3 バイト 25 バイト money bit 24 バイト 1 バイト datetime smalldatetime real 26 バイト 26 バイト 25 バイト smallmoney 24 バイト • データをコピー・アウトするときに、数値データに短すぎる フィールド長を指定すると、bcp はオーバフロー・メッセージを 表示し、データのコピーは行いません。 • binary および varbinary フィールドのデフォルト長は、そのカラ ムに定義されている長さの 2 倍です。これは、フィールドのデー タが 1 バイトごとに 2 バイトのファイル記憶領域を必要とするた めです。 • デフォルトの記憶長を使用する場合、実際に割り付けられる記憶 領域の量は、プレフィクス長とターミネータを指定するかどうか によって変わります。 • プレフィクス長として 1、2、または 4 を指定した場合、bcp はデータの実際の長さにプレフィクスの長さとターミネータ を加えた記憶領域を使用します。 • プレフィクス長として 0 を指定し、ターミネータを指定して いない場合、bcp はプロンプトに表示された最大記憶領域を 割り付けます。これは、対象となるデータ型で必要となる最 大領域です。つまり、bcp はこのフィールドを固定長フィー ルドとして扱い、あるフィールドがどこで終わり、次の フィールドがどこから始まるかを判断します。 第2章 bcp を使用した Adaptive Server とのデータの転送 たとえば、フィールドが varchar(30) と定義されている場合、 bcp は、長さが 1 文字分しかない値があったとしても、各値 に 30 バイトを使用します。 • すべてのデータをコピーし終わるまで、データ値がどのくらいの 大きさかわからないため、bcp は必ず指定された長さになるまで char データ型にスペースを埋め込みます。 フィールド・ターミネータとロー・ターミネータ ターミネータは、カラムまたはローの終わりをマーク付けし、次の ローまたはカラムとの区切りを示すために使用できます。デフォルト は「ターミネータなし」です。 • フィールド・ターミネータはテーブル・カラムを区切る文字です。 • ロー・ターミネータは、テーブルまたはファイルの各ローの最終 フィールドに使用するフィールド・ターミネータです。 人間が判読できるターミネータを選択できるため、ターミネータは文 字データを扱う場合に非常に便利です。各カラムの間にはタブを使用 し、各ローの最後には改行ターミネータを使用する bcp 文字オプショ ンは、データ・ファイルの読みやすさを向上させるターミネータの使 用法の例です。 他のプログラムで使用するデータを作成する場合や bcp を使用して データを表形式にする場合には、ユーザ固有のターミネータを使用し てください。ターミネータとして使用可能な文字は次のとおりです。 • \t で示されるタブ • \n で示される改行文字 • \r で示される復帰改行文字 • \ で示されるバックスラッシュ • \0 で示される null ターミネータ ( 見えないターミネータ ) • 印刷可能な任意の文字 (*、A、t、| など ) • 上述したターミネータを含む最大 10 文字の印刷可能な文字で構 成される文字列 ( たとえば、**\t**、end、!!!!!!!!!!、\t--\n など ) 注意 制御文字 (ASCII 0 ~ 25) は出力できません。 37 デフォルトの変更:対話型 bcp ターミネータの選択 データのどこにも使用されていないパターンをターミネータとして選 択してください。 たとえば、タブを含むデータの文字列にタブ・ターミネータを使用す ると、どのタブがデータ文字列の終わりを表すのかがわかりにくくな ります。この場合、どのタブが文字列の終わりを表すことになるので しょうか。bcp は必ず最初のターミネータを探しますが、この場合は 最初に検出されるタブはデータ文字列の一部であり、ターミネータで はありません。 ネイティブ・フォーマットのデータもターミネータと競合することが あります。ネイティブ・フォーマットの 4 バイト整数が含まれている カラムの場合、これらの整数値が厳密に制限されていないと、データ 内部で使用されていないターミネータを選択することはできません。 そのため、ネイティブ・フォーマットのデータには bcp のネイティ ブ・フォーマット・オプションを使用してください。 注意「ターミネータなし」が「null ターミネータ」とは異なる点に注 意してください。null ターミネータは目には見えませんが、実際の文 字です。 38 第2章 bcp を使用した Adaptive Server とのデータの転送 フォーマット・ファイルの使用 bcp は、テーブル内の各フィールドについての情報を収集してから、 フォーマット・ファイルを保存するかどうかを確認し、ファイル名を フォーマット・ファイル 入力するよう要求してきます。 bcp ユーティリティを使ってコピーするデータ用に作成されたフォー マット・ファイルを使用すると、データを非対話型方式でコピー・イ ンまたはコピー・アウトできます。つまり、bcp は情報の入力を要求 するプロンプトを表示しません。bcp は、必要な情報をこのフォー マットファイルから取得するからです。この新しく作成したフォー マット・ファイルは、データを Adaptive Server にコピーし戻したり、 テーブルからコピー・アウトするときに使用できます。 図 2-3 は、bcp フォーマット・ファイルのフォーマットを図解したも のです。この図は、pubs2 データベースの publishers テーブルを示して います。ホスト・ファイル・カラムはすべて文字フォーマットで、プ レフィクスはなく、デフォルトのデータ長を使用しています。ローの 最終カラムの末尾には改行ターミネータを使用し、他のすべてのカラ ムにはタブをターミネータとして使用しています。 図 2-3: bcp フォーマット・ファイル プレフィックス長 バージョン ターミネータ カラム数 ホスト・ ファイルの カラム順 10.0 4 1 SYBCHAR 0 pub_id 2 SYBCHAR 0 pub_name ホスト・ファイルの データ型 サーバ のカラム名 4 "\t" 1 20 "\t" 2 ホスト・ ファイルの データ長 サーバ のカラム順 39 フォーマット・ファイルの使用 bcp フォーマット・ファイルの要素 次のリストに bcp フォーマット・ファイルの要素を示します。図 23(39 ページ ) は、フォーマット・ファイルの例として見てください。 • ファイルの最初の行は、つねに bcp のバージョン番号です。これ は、Adaptive Server のバージョンではなく、使用中の bcp のバー ジョンを表し、引用符なしのリテラル文字列です。図 2-3 の場合、 バージョンは 10.0 です。 • bcp フォーマット・ファイルの 2 行目はカラム数です。カラム数 は 1 行目と 2 行目を除くフォーマット・ファイルのレコード数を 示します。ホスト・テーブルの各カラムはそれぞれ 1 行で表され ています。 • 1 行目と 2 行目の下に、データベース・テーブルの各カラムごと に 1 行ずつ続きます。各要素は通常、タブで区切られています。 ただし、ホスト・ファイルのデータ型とプレフィクス長は空白で 区切られます。これらの要素は次のとおりです。 • ホスト・ファイルのカラム順 • ホスト・ファイルのデータ型 • プレフィクス長 • ホスト・ファイルのデータ長 • ターミネータ • サーバのカラム順 • サーバのカラム名 • カラムの精度 • カラムの位取り 以降の項では、フォーマット・ファイルのカラム要素について説明し ます。 ホスト・ファイルのカラム順 「ホスト・ファイルのカラム順」は、ホスト・データ・ファイルの フィールドの 1 から始まる連続する番号です。 40 第2章 bcp を使用した Adaptive Server とのデータの転送 ホスト・ファイルのデータ型 「ホスト・ファイルのデータ型」は、データベース・テーブル・カラ ムのデータ型のことではなく、ホスト・データ・ファイルのフィール ドの記憶領域フォーマットを指します。 有効な記憶領域フォーマットを表 2-6 に示します。 表 2-6: ホスト・ファイルのデータ型の記憶領域フォーマット 記憶領域フォーマット SYBCHAR Adaptive Server データ型 char/varchar (ASCII) SYBTEXT SYBBINARY text binary SYBIMAGE SYBINT1 image tinyint SYBINT2 SYBINT4 smallint int SYBFLT8 SYBREAL float real SYBBIT SYBNUMERIC SYBDECIMAL bit numeric decimal SYBMONEY SYBMONEY4 money smallmoney SYBDATETIME SYBDATETIME4 datetime smalldatetime プレフィクス長 「プレフィクス長」は、フィールド長プレフィクスのバイト数を指し ます。この長さプレフィクスは、フィールド内の実際のデータ長を表 す 0、1、2、または 4 バイトの符号なし整数値で、ホスト・データ・ ファイルに埋め込まれています。長さプレフィクスを含むフィールド と含まないフィールドがあります。 表 2-7 に、有効なプレフィクス長の値を示します。 41 フォーマット・ファイルの使用 表 2-7: 有効なプレフィクス長の値 長さ ( バイト数 ) 0 1 範囲 プレフィクスなし 28-1; 0-255 2 4 216-1; 0-65535 232 -1; 0-4,294,967,295 ホスト・ファイルのデータ長 「ホスト・ファイルのデータ長」は、フィールドにコピーする最大バイ ト数を指します。bcp は、どれくらいの量のデータをコピー・インまた はコピー・アウトするかを決定するのに、次の項目を使用します。 • 最大フィールド長 • プレフィクス長 ( 指定されている場合 ) • フィールド・ターミネータ文字列 ( 指定されている場合 ) フィールド長が複数の方法で指定されている場合、bcp はコピーする データ量が最も少ない方法を選択します。 ターミネータ 「ターミネータ」は、引用符 (" ") で囲まれた最大 30 バイトの文字列で す。ターミネータは、ホスト・データ・ファイルにあるフィールドの データの終了を示します。 サーバのカラム順 「サーバのカラム順」は、ホスト・データ・ファイルのカラムがロー ドされる syscolumns カラムの colid ( カラム ID) を表します。この要素 と「ホスト・ファイルのカラム順」によって、ホスト・ファイル・ フィールドがデータベース・テーブル・カラムにマップされます。 サーバのカラム名 「サーバのカラム名」は、このフィールドがロードされるデータベー ス・テーブル・カラムの名前です。 42 第2章 bcp を使用した Adaptive Server とのデータの転送 カラムの精度 「カラムの精度」は、このフィールドがロードされるデータベース・ テーブル・カラムの精度です。この要素は、記憶フォーマットが numeric または decimal の場合にだけ存在します。 カラムの位取り 「カラムの位取り」は、このフィールドがロードされるデータベー ス・テーブル・カラムの位取りです。この要素は、記憶フォーマット が numeric または decimal の場合にだけ存在します。 43 データを対話形式でコピー・アウトする例 データを対話形式でコピー・アウトする例 bcp プロンプトのデフォルト値を変更して、他のソフトウェアで使用 するデータを作成できます。 人間が判読できるファイルを作成するには、bcp プロンプトに対して 次のように応答してください。 • ファイル記憶タイプ - 0 を入力 • プレフィクス長 - 0 を入力 • フィールド長 - デフォルトのまま • ターミネータ - 入力するフィールド・ターミネータは、使用す るソフトウェアによって異なります。 • 区切られるフィールドまたは固定長フィールドの間に使用し ます。最後のフィールドの終わりには、必ず改行ターミネー タの \n を使用してください。 固定長フィールドの場合、ターミネータは使用しないでくだ さい。各フィールドは固定長であり、指定された長さになる までフィールドにスペースが埋め込まれます。出力の各行に はフィールド・セパレータがないため、前のフィールドが データでいっぱいになると、隣り合うフィールドが 1 つの フィールドのように見えます。次の例を参照してください。 • カンマ区切りの出力の場合は、カンマ (,) を各フィールドの ターミネータとして使用してください。表形式の出力を作成 する場合は、タブ文字 (\t) をターミネータとして使用してく ださい。 フィールド長を指定してデータをコピー・アウトする例 次の例では、固定長フィールドを使用して、SDF ( システム・デー タ・フォーマット ) と呼ばれるパーソナル・コンピュータ・フォー マットで出力を作成します。このフォーマットは、他のソフトウェア でも簡単に読み込んだり作成したりできます。 「フォーマット・ 注意 フォーマット・ファイルの詳細については、 ファイルの使用」(39 ページ ) を参照してください。 44 第2章 bcp を使用した Adaptive Server とのデータの転送 bcp pubs2..sales out sal_out sal_out ファイルに保存された結果は次のとおりです。 5023 5023 5023 5023 5023 5023 5023 5023 5023 5023 5023 6380 6380 6380 7066 7066 7066 7067 7067 7131 7131 7131 7896 7896 8042 8042 8042 8042 8042 8042 AB-123-DEF-425-1Z3 AB-872-DEF-732-2Z1 AX-532-FED-452-2Z7 BS-345-DSE-860-1F2 GH-542-NAD-713-9F9 NF-123-ADS-642-9G3 XS-135-DER-432-8J2 ZA-000-ASD-324-4D1 ZD-123-DFG-752-9G8 ZS-645-CAT-415-1B2 ZZ-999-ZZZ-999-0A0 234518 342157 356921 BA27618 BA52498 BA71224 NB-1.142 NB-3.142 Asoap132 Asoap432 Fsoap867 124152 234518 12-F-9 13-E-7 13-J-9 55-V-7 91-A-7 91-V-7 Oct Nov Dec Dec Mar Jul Mar Jul Mar Mar Mar Sep Dec Feb Oct Oct Aug Jan Jun Nov Dec Sep Aug Feb Jul May Jan Mar Mar Mar 31 1985 12:00AM 6 1985 12:00AM 1 1990 12:00AM 12 1986 12:00AM 15 1987 12:00AM 18 1987 12:00AM 21 1991 12:00AM 27 1988 12:00AM 21 1991 12:00AM 21 1991 12:00AM 21 1991 12:00AM 30 1987 12:00AM 13 1985 12:00AM 17 1991 12:00AM 12 1985 12:00AM 27 1987 12:00AM 5 1988 12:00AM 2 1987 12:00AM 13 1990 12:00AM 16 1986 12:00AM 20 1990 12:00AM 8 1987 12:00AM 14 1986 12:00AM 14 1991 12:00AM 13 1986 12:00AM 23 1989 12:00AM 13 1988 12:00AM 20 1991 12:00AM 20 1991 12:00AM 20 1991 12:00AM フォーマット・ファイル sal_fmt の内容は次のとおりです。 11.1 3 1 SYBCHAR 04 "" 1 2 SYBCHAR 020 "" 2 3 SYBCHAR 026 "" 3 stor_id ord_num date フォーマット・ファイルの詳細については、 「フォーマット・ファイ ルの使用」(39 ページ ) を参照してください。 45 データを対話形式でコピー・アウトする例 デリミタを指定してデータをコピー・アウトする例 次の例では、bcp は publishers テーブルからファイルに対話形式で データをコピーします。 「フォーマット・ 注意 フォーマット・ファイルの詳細については、 ファイルの使用」(39 ページ ) を参照してください。 フォーマット・ファイルによるカンマ区切りおよび改行区切りの出力の作成 最初の例では、ローのすべてのフィールド間にカンマを挿入し、各 ローの終わりには改行ターミネータを挿入して、出力ファイルを作成 します。この例では、同じデータまたは類似するデータを Adaptive Server にコピーし戻すときに使用できるフォーマット・ファイル (pub_fmt) を作成します。 bcp pubs2..publishers out pub_out pub_out ファイルに保存された結果は次のとおりです。 0736,New Age Books,Boston,MA 0877,Binnet & Hardley,Washington,DC 1389,Algodata Infosystems,Berkeley,CA フォーマット・ファイル pub_fmt の内容は次のとおりです。 11.1 4 1 SYBCHAR 2 SYBCHAR 3 SYBCHAR 4 SYBCHAR 0 0 0 0 4 40 20 2 "," "," "," "\n" 1 2 3 4 pub_id pub_name city state フォーマット・ファイルによるタブ区切り出力の作成 同様に、次の例では pubs2..publishers テーブルから pub_out ファイルに タブ区切りで出力します。 bcp pubs2..publishers out pub_out pub_out ファイルに保存された結果は次のとおりです。 0736 0877 1389 New Age Books Boston MA Binnet & Hardley Washington DC Algodata Infosystems Berkeley CA フォーマット・ファイル pub_fmt の内容は次のとおりです。 46 第2章 11.1 4 1 SYBCHAR 2 SYBCHAR 3 SYBCHAR 4 SYBCHAR 04 040 020 02 bcp を使用した Adaptive Server とのデータの転送 "\t" "\t" "\t" "\n" 1 2 3 4 pub_id pub_name city state 47 データを対話形式でコピー・インする例 データを対話形式でコピー・インする例 ファイルからテーブルに正常にデータをコピーするには、ファイル内 で使用されているターミネータまたはフィールド長をあらかじめ確認 しておき、bcp を使用するときにその値を指定する必要があります。 次の例では、bcp を使用してデータを固定長フィールドとデリミタ指 定のいずれかでコピー・インする方法を、フォーマット・ファイル指 定またはフォーマット・ファイル指定なしで示します。 フィールド長を指定してデータをコピー・インする例 この例では、bcp は salesnew ファイルから pubs2..sales テーブルへデー タをコピーします。 salesnew ファイルには 3 つのフィールドがあります。最初のフィール ドは 4 文字長、2 番目のフィールドは 20 文字長、そして 3 番目の フィールドは 26 文字長です。例に示すとおり、各ローは改行ターミ ネータ (\n) で終了しています。 5023ZS-731-AAB-780-2B9May 24 5023XC-362-CFB-387-3Z5May 24 6380837206 May 24 1993 6380838441 May 24 1993 1993 12:00:00:000AM 1993 12:00:00:000AM 12:00:00:000AM 12:00:00:000AM salesnew から対話形式でデータをコピーするには、次のコマンドを使 用してください。 bcp pubs2..sales in salesnew この bcp コマンドに対するシステムの応答は次のとおりです。 Password: Enter the file storage type of field stor_id [char]: Enter prefix-length of field stor_id [0]: Enter length of field stor_id [4]: Enter field terminator [none]: Enter the file storage type of field ord_num [char]: Enter prefix-length of field ord_num [1]: 0 Enter length of field ord_num [20]: Enter field terminator [none]: Enter the file storage type of field date [datetime]:char Enter prefix-length of field date [1]: 0 Enter length of field date [26]: Enter field terminator [none]: \n Do you want to save this format information in a file? [Y/n] y 48 第2章 bcp を使用した Adaptive Server とのデータの転送 Host filename [bcp.fmt]: salesin_fmt Starting copy... 4 rows copied. Clock Time (ms.): total = 1 Avg = 0 (116000.00 rows per sec.) Adaptive Server にログインして sales にアクセスすると、このテーブ ルに追加された salesnew から次のようなデータを参照できます。 select * from sales stor_idord_num date ------- -------------------- ------------------------5023 AB-123-DEF-425-1Z3 Oct 31 1985 12:00AM 5023 AB-872-DEF-732-2Z1 Nov 6 1985 12:00AM 5023 AX-532-FED-452-2Z7 Dec 1 1990 12:00AM 5023 BS-345-DSE-860-1F2 Dec 12 1986 12:00AM 5023 GH-542-NAD-713-9F9 Mar 15 1987 12:00AM 5023 NF-123-ADS-642-9G3 Jul 18 1987 12:00AM 5023 XS-135-DER-432-8J2 Mar 21 1991 12:00AM 5023 ZA-000-ASD-324-4D1 Jul 27 1988 12:00AM 5023 ZD-123-DFG-752-9G8 Mar 21 1991 12:00AM 5023 ZS-645-CAT-415-1B2 Mar 21 1991 12:00AM 5023 ZZ-999-ZZZ-999-0A0 Mar 21 1991 12:00AM 6380 234518 Sep 30 1987 12:00AM 6380 342157 Dec 13 1985 12:00AM 6380 356921 Feb 17 1991 12:00AM 7066 BA27618 Oct 12 1985 12:00AM 7066 BA52498 Oct 27 1987 12:00AM 7066 BA71224 Aug 5 1988 12:00AM 7067 NB-1.142 Jan 2 1987 12:00AM 7067 NB-3.142 Jun 13 1990 12:00AM 7131 Asoap132 Nov 16 1986 12:00AM 7131 Asoap432 Dec 20 1990 12:00AM 7131 Fsoap867 Sep 8 1987 12:00AM 7896 124152 Aug 14 1986 12:00AM 7896 234518 Feb 14 1991 12:00AM 8042 12-F-9 Jul 13 1986 12:00AM 8042 13-E-7 May 23 1989 12:00AM 8042 13-J-9 Jan 13 1988 12:00AM 8042 55-V-7 Mar 20 1991 12:00AM 8042 91-A-7 Mar 20 1991 12:00AM 8042 91-V-7 Mar 20 1991 12:00AM (34 rows affected) sales の stor_id および ord_num カラムにはユニークなクラスタード・ インデックスがあるため、新しいローは順序どおりにソートされてい ます。 49 データを対話形式でコピー・インする例 重複や違反があると、コピー・プロセスは次のような影響を受けます。 • ファイルからコピーされたデータのカラムにユニーク・インデッ クス違反があると、bcp は違反しているローがあるバッチ全体を 破棄します。 バッチ・サイズを 1 にすると、各ローを個別に評価しますが、 ロード速度が遅くなり、高速 bcp セッション中にローごとに別々 のデータ・ページが作成されます。 • コピー・インするデータ型とデータベース・にあるデータ型に互 換性がない場合、コピー全体が失敗します。 デリミタを指定してデータをコピー・インする例 この例では、bcp は newpubs ファイルから pubs2..publishers テーブルに データをコピーします。newpubs ファイルでは、例に示すように、 ローの各フィールドはタブ文字 (\t) で終了し、各ローは改行文字で (\n) で終了します。 1111 Stone Age Books Boston MA 2222Harley & Davidson WashingtonDC 3333 Infodata Algosystems Berkeley CA newpubs はすべて文字データなので、次に示すように文字コマンド・ ライン・フラグを使用し、コマンド・ライン・オプションにターミ ネータを指定できます。 bcp pubs2..publishers in newpubs -c -t\\t -r\\n フォーマット・ファイルを指定してデータをコピー・インする例 保存されている pub_fmt フォーマット・ファイルを使用して Adaptive Server にデータをコピーし戻すには、次のコマンドを使用します。 bcp pubs2..publishers in pub_out -fpub_fmt pub_fmt ファイルを使用すると、任意のデータを同じフォーマットで Adaptive Server にコピーできます。デリミタが異なる同様のデータ・ ファイルがある場合、そのフォーマット・ファイルのデリミタを変更 できます。 50 第2章 bcp を使用した Adaptive Server とのデータの転送 同様に、すべてのフィールドが同じ長さであれば、フォーマット・ ファイルを編集し、フィールド長に対して行った変更を反映させるこ とができます。たとえば、moresales ファイルに次のようなデータが 入っているとします。 804213-L-9 804255-N-8 804291-T-4 804291-W-9 Jan Mar Mar Mar 21 12 23 23 1993 1993 1993 1993 12:00AM 12:00AM 12:00AM 12:00AM フォーマット・ファイル sal_fmt を次のように編集します。 11.5 3 1 SYBCHAR 0 4 "" 1 stor_id 2 SYBCHAR 0 7 "" 2 ord_num 3 SYBCHAR 0 21 "\n" 3 date 次のようにコマンドを入力してください。 bcp pubs2..sales in moresales -fsal_fmt システムの応答は次のとおりです。 Starting copy... 4 rows copied. Clock Time (ms.): total = 1 Avg = 0 (116000.00 rows per sec.) 51 代替言語での bcp の使用 代替言語での bcp の使用 Adaptive Server は、インストール中に設定されたデフォルト文字 セットを使用してデータを保管します。使用している端末がこのデ フォルト文字セットをサポートしていない場合、文字を入力したりホ スト・ファイルのスクリプトを使用してプロンプトに応答したりする と、文字化けして bcp に送信されることがあります。 すべての文字セット・オプションを省略すると、bcp はそのプラット フォームでデフォルトとして設定された文字セットを使用します。こ のデフォルト設定では、次のような理由から通信上の問題が生じる可 能性があります。 • デフォルトの文字セットは、必ずしも Adaptive Server に設定さ れた文字セットと同じであるとはかぎりません。 • デフォルトの文字セットは、必ずしもクライアントが使用する文 字セットと同じであるとはかぎりません。 文字セットとそれに関連するフラグの詳細については、 『システム管 理ガイド』の「クライアント/サーバの文字セットの変換設定」を参 照してください。 52 第2章 bcp を使用した Adaptive Server とのデータの転送 コピー・インとバッチ・ファイル バッチ処理はバルク・コピー・インだけに適用され、コピー・アウト に影響を与えることはありません。デフォルトでは、Adaptive Server は 1000 行のバッチに指定されたすべてのローをコピーします。 別のバッチ・サイズを指定するには、コマンド・ライン・オプション (-bbatch_size) を使用します。 データをコピー・インするときに、Adaptive Server または bcp はそ れを拒否できます。 • Adaptive Server は、各バッチを個別のトランザクションとして扱 います。サーバがバッチ内のローを拒否すると、トランザクショ ン全体がロールバックされます。 • bcp は、バッチを拒否すると次のバッチに進みます。トランザク ションがロールバックされるのは、致命的なエラーが発生した場 合だけです。 • Adaptive Server はローごとではなくバッチごとにエラー・メッ セージを生成し、エラーが検出されたバッチを拒否します。エ ラー・メッセージは端末に表示され、エラー・ファイルに保存さ れます。 • bcp は、エラー・メッセージをエラー・ファイルに保存します。 bcp がエラーを保存するのは、たとえばユニーク・インデックス を持つテーブルで Adaptive Server が重複ローを検出した場合な どです。 リカバリ性の向上 リカバリ性を高めるには、次のような方法があります。 • 大規模な入力ファイルを小さい単位に分割する。 たとえば、bcp を使って 100,000 ローのバッチ・サイズで 300,000 ローをバルク・コピー・インした場合、200,000 ロー以降で致命 的エラーが発生しても、最初の 2 つのバッチ (200,000 ロー ) は Adaptive Server に正常にコピーされます。この場合、バッチを使 用していなければ、bcp は Adaptive Server にローを 1 つもコピー できません。 53 コピー・インとバッチ・ファイル • trunc log on chkpt を true ( オン ) に設定する。 これにより、バッチ終了後に、トランザクション用のログ・エン トリをトランケーション用に使用できます。trunc log on chkpt データベース・オプションがオン (true) に設定されているデータ ベースにコピー・インする場合、終了したバッチのログ・エント リは次の自動チェックポイントで削除されます。この結果、大規 模な bcp オペレーションは分割され、ログがいっぱいになるのを 防ぎます。 • -bbatch_size を 1 に設定する。 このバッチ・サイズ・パラメータを 1 に設定すると、bcp は不完 全なローだけを拒否します。そのため、エラー・ログを調べる と、どのローが失敗したのかを正確に識別できます。 注意 bcp はバッチごとにデータ・ページを 1 つ作成するため、 -bbatch_size を 1 に設定すると、1 ページ 1 ローのデータ・ページ が作成されます。そのため、データのロードが遅くなり、記憶領 域の使用量も多くなります。 バッチと分割されたテーブル 分割番号を指定しないで、分割されたテーブルにデータをバルク・コ ピーする場合、Adaptive Server は各バッチを使用可能な分割にラン ダムに割り当てます。1 つのバッチでローをコピーすると、すべての ローが単一の分割に挿入されるので、分割されたテーブルでロード・ アンバランスが起こります。 分割されたテーブルのバランスを保つために、データのバルク・コ ピーを行う場合には小さなバッチ・サイズを使用するか、bcp セッ ション中に分割 ID を指定してください。テーブルの分割に関する詳 細については、 『パフォーマンス&チューニング・ガイド』を参照し てください。 54 第2章 bcp を使用した Adaptive Server とのデータの転送 text または image データのコピー・アウト text または image データをコピー・アウトする場合、デフォルトで は、Adaptive Server は text または image フィールド内の最初の 32K のデータだけをコピーします。-Ttext_or_image_size パラメータを使用 して、別の値を指定することもできます。たとえば、コピー・アウト する text フィールドに 40K のデータが含まれている場合は、次のコマ ンドを使用して、40K のデータすべてをコピー・アウトできます。 bcp pubs2..publishers out -T40960 注意 text または image フィールドが指定の値またはデフォルト値より 大きい場合、bcp はオーバフローした分をコピー・アウトしません。 55 ネットワーク・パケット・サイズの指定 ネットワーク・パケット・サイズの指定 大量のバルク・コピー・オペレーションのパフォーマンスを向上させ るために、デフォルトより大きいネットワーク・パケット・サイズを 使用する場合があります。このような場合には、-Asize オプション で、開始する bcp セッションで使用するネットワーク・パケット・サ イズを指定します。 size に指定する値は、次の条件を満たしている必要があります。 • default network packet size 設定パラメータと max network packet size 設定パラメータの間の値である。 • 512 の倍数である。 注意 新しいパケット・サイズは、現在の bcp セッションでのみ有 効です。 次に例を示します。 bcp pubs2..authors out -A 2048 -T40960 この例では、Adaptive Server はこの bcp セッションで 2,048 バイトの パケット・サイズを使用して、40K の text または image データを送信 します。 56 第2章 bcp を使用した Adaptive Server とのデータの転送 コピー・インとエラー・ファイル コピー・インで - e error_file オプションを指定すると、bcp は Adaptive Server にコピー・インできないローを指定されたエラー・ ファイルに保存します。 • エラー・ファイルには次のような要素が保管されます。 • 失敗したローと発生したエラーを示す 1 行 • ホスト・ファイルから正確にローをコピーした 1 行 • -e の後に指定したファイルがすでに存在する場合、bcp はこの ファイルを上書きします。 • エラーが発生しなければ、bcp はこのファイルを作成しません。 bcp in は、次の 2 種類のエラーを検出します。 • データ変換エラー • ローの構築エラー。たとえば、NULL 値を受け付けないカラムへ の NULL の挿入、3 バイト整数などの無効なデータ・フォーマッ トの使用などによって発生します。 コピー・イン・プロセスでは、エラー・メッセージはモニタ上に表示 されます。 次の例では、newpubs ファイルを publishers データベースにロードし、 エラーがあれば、そのエラー・ローを pub_err ファイルに保管します。 bcp pubs2..publishers in newpubs -epub_err コピー・イン時に生成されたエラー・ファイルを参照するときには、 次の点に注意してください。 • bcp は、bcp プログラム自体がエラーを検出した場合にだけエ ラーファイルにローを保管します。 • そして、bcp はエラー・ローの最大数に達するまでローのコピー を続け、最大数に達するとコピーを中止します。 • bcp はローをバッチで Adaptive Server に送信するので、ユニー ク・インデックスを持つテーブルの重複ローなど、Adaptive Server が拒否したローのコピーは保管できません。 • Adaptive Server は、エラーを検出すると、エラー・メッセージを ローごとではなくバッチごとに生成し、そのバッチ全体を拒否し ます。 57 コピー・インとエラー・ファイル • 58 テーブルのインデックスが作成されたときに allow_dup_row また は ignore_dup_key が設定されていれば、Adaptive Server が重複 ローを拒否してもエラーとはみなされません。この場合、コピー は正常に続行されますが、重複ローはテーブルにも bcp エラー・ ファイルにも保管されません。 第2章 bcp を使用した Adaptive Server とのデータの転送 コピー・アウトとエラー・ファイル コピー・インの場合と同様にコピー・アウト・プロセスにおいても、 bcp は同じ名前の任意のファイルを上書きし、エラーが発生しなけれ ば、エラー・ファイルは作成しません。 コピー・アウト中にエラー・ファイルにローのログが記録されるの は、次の 2 つのエラーが発生した場合です。 • ローのいずれかのカラムで発生したデータ変換エラー • ホスト・ファイルへの書き込み中に発生した I/O エラー コピー・アウト時に生成されたエラー・ファイルを参照するときに は、次の点に注意してください。 • bcp はデフォルト文字フォーマットでエラー・ファイルにローの ログを記録します。 • すべてのデータ値は、カラム間にはタブ、各ローの終わりには改 行ターミネータが入った文字フォーマットで出力されます。 59 データの整合性:デフォルト、ルール、トリガ データの整合性:デフォルト、ルール、トリガ データの整合性を保つために、bcp はコピーするデータをその要素に 応じて処理します。 デフォルトとデータ型 データをテーブルにコピーするとき、bcp はカラムおよびデータ型に 定義されている任意のデフォルトを参照します。つまり、ファイル内 のデータに null フィールドがある場合、bcp はコピーするときに null 値の代わりにデフォルト値をロードします。 たとえば、authors テーブルにロードされるファイルには次のような 2 つのローがあります。 409-56-7008,Bennet,David,415 658-9932,622 Pine St.,Berkeley,CA,USA,9470521346-8915,Green,Marjorie,,309 63rd St. #411,Oakland,CA,USA,94618 この例では、フィールドはカンマで区切られており、ローとローの間 は改行ターミネータで区切られています。Marjorie Green には電話番 号がありません。authors テーブルの phone カラムのデフォルトは "unknown" なので、このファイルがロードされたテーブルのローは 次のようになります。 409-56-7008 Bennet David 415 658-9932 Berkeley CA USA 94705 213-46-8915 Green Marjorie unknown Oakland CA USA 94618 622 Pine St. 309 63rd St. #411 ルールとトリガ bcp は、データのロードを最高速度で行えるよう、ルールとトリガを 起動しません。 ルールおよびトリガに違反するローを見つけるには、データをテーブ ルにコピーし、ルールまたはトリガの条件をテストするクエリやスト アド・プロシージャを実行してください。 60 第2章 bcp を使用した Adaptive Server とのデータの転送 bcp と他のユーティリティの相違点 テーブル全体または 1 つのテーブルの一部分をコピーする bcp ユー ティリティは、データをある場所から別の場所へと移動する他のユー ティリティとは異なります。 次のリストでは、こうした他のユーティリティとそのコマンドの名前 を示し、データの移動においてどのように使用するのが最善かについ て説明します • SQL コマンドの dump database、load database、dump transaction、および load transaction。 これらのコマンドは、バックアップだけを目的として使用しま す。dump コマンドは、bcp とは異なり、データベース全体の物理 的なイメージを作成します。 dump database または dump transaction でバックアップされた データを読み取るには、load database または load transaction を使 用する必要があります。 SQL コマンドの dump および load の詳細については、 『システム 管理ガイド』および『Adaptive Server リファレンス・マニュア ル』を参照してください。 • データ変更コマンドの insert、update、および delete。 これらのコマンドはそれぞれ、テーブルまたはビューにおける新 しいローの追加、既存のローの変更、ローの削除に使用します。 • テーブル間でデータを移動するには、insert コマンドを select 文と一緒に使用します。 • select 文の中で into 句を使用すると、次の 1) ~ 3) に基づいて 新しいテーブルが作成されます。1) select 文で指定したカラ ム、2) from 句で指定したテーブル、3) where 句で指定した ローのデータ。 データの追加、変更、削除の詳細については、『Adaptive Server リファレンス・マニュアル』の insert、update、delete を参照して ください。 61 bcp と他のユーティリティの相違点 62 第 3 章 dsedit の使用 この章では、dsedit ユーティリティを使って Adaptive Server の interfaces ファイルを編集する方法について説明します。この章 の内容は次のとおりです。 項名 dsedit について 編集セッションのオープン サーバ・エントリの追加、表示、編集 dsedit に関するトラブルシューティング ページ 64 65 67 70 63 dsedit について dsedit について dsedit は、X-Windows ベースのグラフィカル・ツールで、interfaces ファイルのサーバ・エントリを表示、編集するときに使用します。 使用しているシステムが X-Windows をサポートしていない場合は、 interfaces ファイルのサーバ・エントリの設定には dscp を使用しま す。詳細については、「第 4 章 dscp の使用」を参照してください。 dsedit の実行 interfaces ファイルに対して UNIX の書き込みパーミッションが与え られていることを確認してから、dsedit を開始します。 リモート・マシンから dsedit を実行する場合、DISPLAY 環境変数が 正しく設定され、dsedit の画面が、リモート・マシンではなく、使用 しているマシンに表示されていることを確認します。 DISPLAY 環境変数を設定するには、次の手順に従います。 1 リモート・マシンにログインします。 2 次のコマンドを入力します。 setenv DISPLAY your_machine_name:0.0 dsedit を実行するには、次のコマンドを入力します。 $SYBASE/bin/dsedit [Select a Directory Service] 画面が表示されます。この画面で、 interfaces ファイルの編集セッションをオープンできます。interfaces ファイルのデフォルトのフル・パス名は、[Interfaces File to Edit] ボッ クスに表示されます。設定ファイルのフル・パス名がその下に表示さ れます。 64 第3章 dsedit の使用 編集セッションのオープン デフォルトの interfaces ファイルをオープンして編集するには、次の 手順に従います。 1 [Sybase Interfaces File] を選択します。 2 [OK] をクリックします。 デフォルトの interfaces ファイル以外のファイルをオープンするには、 次の手順に従います。 1 [Sybase Interfaces File] を選択します。 2 表示されるファイル名を編集します。 3 [OK] をクリックします。 [Directory Service Session] ウィンドウが表示されます。 複数の interfaces ファイル・セッションをオープンし、それぞれの セッションで異なるファイルを編集できます。 [Directory Service Session] 画面には、interfaces ファイルのフル・パス名 と、ファイル内にあるサーバ・エントリのリストが表示されます。 [Add new server entry] - [Server Entry Editor] ウィンドウが表示され る。ここで新しいサーバ・エントリの名前とネットワーク・アドレス を指定する。 [Modify server entry] - 選択されているサーバ・エントリについて、 ネットワーク・アドレスの表示と変更ができる。サーバ・エントリを 表示または変更するには、リストでそのサーバを選択してから [Modify server entry] ボタンをクリックし、[Server Entry Editor] ウィ ンドウにサーバの属性を表示する。 [Copy server entry] - 1 つ以上のエントリを別の interfaces ファイル にコピーする。 [Close Session] - セッション・ウィンドウをクローズし、変更を interfaces ファイルに書き込む。 これらのボタンを使用する手順については、 「サーバ・エントリの追 加、表示、編集」(67 ページ ) を参照してください。 [Session] 画面の [Add new server entry] ボタンまたは [Modify server entry] ボタンをクリックすると、[Server Entry Editor] 画面が表示さ れます。 interfaces ファイルのサーバ・エントリを表示または編集するには、 [Server Entry Editor] ウィンドウを使用します。 65 編集セッションのオープン [Server name] - サーバ・エントリを追加する場合は、新しいサーバ の名前を入力する。サーバ・エントリを編集する場合は、名前フィー ルドを編集し、サーバ名を変更できる。interfaces ファイルにある名 前を新しい名前として指定することはできない。 [Available network transports] - サーバがクライアントと接続する ネットワーク・アドレスのリスト。次のいずれかを行う。 • 新しいアドレスを作成するには、[Add network transport] をク リックします。「サーバ・エントリの追加、表示、編集」(67 ペー ジ ) を参照してください。 • 既存のアドレスを編集するには、[Modify network transport] をク リックします。「サーバ・エントリの追加、表示、編集」(67 ペー ジ ) を参照してください。 • 選択されているネットワーク・アドレスを削除するには、[Delete network transport] をクリックします。 • リスト内のアドレスを並べ替えるには、[Move network transport up] または [Move network transport down] をクリックします。 [OK] ボタン - 変更を確認してウィンドウをクローズします。 [Directory Service Session] 画面の [Close Session] ボタンを使用して セッションをクローズするまで、interfaces ファイルへの変更は適用 されません。 [Cancel] ボタン - ウィンドウをクローズし、すべての編集内容を廃 棄します。 66 第3章 dsedit の使用 サーバ・エントリの追加、表示、編集 この項の手順を実行行するには、interfaces セッション・ウィンドウ をオープンします。詳細については、 「編集セッションのオープン」 (65 ページ ) を参照してください。 注意 この項で説明する各手順を実行したあとで、[Close Session] をク リックして、すべての変更を interfaces ファイルに適用してください。 このボタンをクリックすると、interfaces セッション・ウィンドウも クローズされます。 新しいサーバ・エントリを追加する場合 1 [Add new server entry] をクリックします。 [Server Entry Editor] ウィンドウが表示されます。 2 新しいサーバ・エントリの名前とネットワーク・アドレスを指定 します。 サーバ・エントリを表示または変更する場合 1 [Modify server entry] をクリックします。 [Server Entry Editor] ウィンドウにサーバの属性が表示されます。 2 希望どおりに属性を変更します。 サーバ・エントリを別の interfaces ファイルにコピーする場合 1 次のいずれかの方法で、コピーするエントリを選択します。 • エントリを 1 つだけコピーするには、そのエントリを 1 回だ けクリックします。 • 隣り合う複数のエントリを一度にコピーするには、最初 ( ま たは最後 ) のエントリをクリックし、[Shift] キーを押したま ま最後 ( または最初 ) のエントリをクリックします。 • 互いに離れた位置にある複数のエントリを選択するには、[Ctrl] キーを押しながらそれぞれのエントリをクリックします。 2 [Copy server entry] をクリックします。 3 リストから、[Sybase interfaces file] を選択します。 4 表示されるファイル名を編集します。 5 [OK] をクリックします。 67 サーバ・エントリの追加、表示、編集 ネットワーク・トランスポート・アドレスの追加または編集 [Network Transport Editor] ウィンドウでは、サーバがクライアント と接続するトランスポート・アドレスを表示、編集、作成できます。 このウィンドウには、アドレスに対応するサーバ・エントリの名前が 表示され、次の項目を設定できます。 • [Transport type] メニュー - アドレスのプロトコルとインタ フェースを指定します。Digital UNIX 以外のすべてのプラット フォームに対しては、tcp、tli tcp、tli spx、または spx の値が指定 できます。Digital UNIX の場合は、decnet、tcp、または tli tcp の 値が指定できます。 • アドレス情報 - トランスポートのタイプによって、必要なアド レスのコンポーネントが異なります。アドレスのフォーマットに ついては、以降の各項で詳しく説明します。 TCP/IP アドレス TCP/IP エントリのアドレス情報は、ホスト名 ( または IP アドレス ) とポート番号 (10 進数として入力 ) で構成されます。tli tcp フォーマッ トの interfaces エントリでは、ホストの IP アドレスとポート番号は、 tli tcp フォーマットの interfaces エントリに必要な 16 バイトの 16 進数 表示に変換されます。 tli tcp フォーマットの interfaces エントリは、次のものに対応します。 • tli フォーマットの interfaces エントリを使用する 10.0 より前のす べてのクライアント • tli フォーマットの interfaces エントリを使用する Adaptive Server、またはリリース 11.0.x 以前の Replication Server これ以外のクライアントとサーバでは、tcp を使用します。 TCP/IP アドレスを指定するには、[Transport Type] メニューから、 [tcp] または [tli tcp] を選択します。 SPX/IPX アドレス Adaptive Server は、Novell ネットワーク上で稼働するクライアン ト・アプリケーションの接続要求を、SPX/IPX アドレスを使って受 信します。SPX/IPX は、次の情報で構成されます。 68 第3章 dsedit の使用 • ホスト・アドレス - 8 桁の 16 進数で、サーバが稼働するコン ピュータの IP アドレスを表します。IP フォーマットのドットで 区切られた 10 進数のそれぞれを 1 バイトの 16 進数にマップする ことで、16 進数のフォーマットが作成されます。たとえば、IP ア ドレスが 128.15.15.14 であれば、SPX/IPX のホスト・アドレス値 として "800F0F0E" と入力します。 • ポート番号 - ポート番号は、4 桁の 16 進数として表されます。 • 終了ポイント - SPX デバイス・ドライバを指すデバイス・ファイ ルのパス。デフォルトは、Soralis では /dev/mspx、それ以外のプ ラットフォームでは /dev/nspx です。必要に応じ、サーバが稼働す るマシンに合わせてパスを変更してください。デフォルトのパス は、dsedit を実行しているプラットフォームをもとにしています。 SPX/IPX アドレスを指定するには、[Transport Type] メニューから [tli spx] または [spx] を選択します。 69 dsedit に関するトラブルシューティング dsedit に関するトラブルシューティング この項では一般的な問題をいくつか挙げ、その対処方法について説明 します。 dsedit ユーティリティが起動しない 次の各項に該当していないか確認してください。 • SYBASE 環境変数が設定されていないか、誤ったディレクトリが 指定されている。 • X-Windows が正しく設定されていない。リモート・ホスト上で dsedit を実行している場合は、リモート・ホスト上の X-Windows クライアントが、使用しているマシン上の X-Windows サーバに 接続できることを確認します。トラブルシューティングの詳細に ついては、X-Windows のマニュアルを参照してください。 X-Windows が使用できない場合は、dsedit の代わりに dscp を使 用します。 エラー・メッセージ :"Unable to open X display" 表示用のマシンが、リモート・ホストからの X-Windows 接続を拒否 するように設定されていると、dsedit は機能しないことがあります。 この問題が発生している場合には、次のようなメッセージが表示され ます。 Unable to open X display. Check the value of your $DISPLAY variable. If it is set correctly, use the 'xhost +' command on the display machine to authorize use of the X display. If no X display is available, run dscp instead of dsedit. このエラーは、次のどちらかの状況で発生します。 • DISPLAY 環境変数の値が正しく入力されているか、設定されてい ない。 解決法:DISPLAY 環境変数の値を正しく入力します。 • DISPLAY が参照するマシン上でウィンドウをオープンする権限が ない。 解決法:表示用のマシンで、コマンド "xhost +" を実行します。 70 第3章 dsedit の使用 サーバ・エントリを追加、変更、または削除できない interfaces ファイルのパーミッションに関する問題がないか確認して ください。interfaces のエントリを編集するには、interfaces ファイル と Sybase のインストール・ディレクトリの両方に対して、書き込み パーミッションが必要です。 71 dsedit に関するトラブルシューティング 72 第 4 章 dscp の使用 dscp はコマンド・ライン・ユーティリティで、interfaces ファイ ルのサーバ・エントリを表示、編集するときに使用します。この 項の内容は、次のとおりです。 項名 dscp について サーバ・エントリの操作 dscp の終了 dscp ユーティリティ・コマンドのクイック・リファレンス ページ 74 76 82 83 73 dscp について dscp について dscp の実行 dscp を実行するには、次のコマンドを入力します。 $SYBASE/bin/dscp dscp のプロンプト >> が表示されます。 dscp についてのヘルプへのアクセス dscp のヘルプ画面を表示するには、次のいずれかのコマンドを入力 します。 help h ? dscp セッションの使用 サーバ・エントリを表示、追加、変更する場合は、まずセッションを オープンします。これによって、対話形式で interfaces ファイルを使 用できます。 一度に複数のセッションをオープンできます。 セッションのオープン interfaces ファイルでセッションをオープンするには、次のコマンド を入力します。 open InterfacesDriver セッションをオープンすると、dscp はセッション番号を通知します。 たとえば、open InterfacesDriver コマンドを使ってセッションをオー プンすると、dscp は次のメッセージを表示します。 ok Session 1 InterfacesDriver>> 74 第4章 dscp の使用 セッションの表示 オープンされているセッションをすべて表示するには、次のコマンド を入力します。 sess オープンされているセッション間の切り替え オープンされている別のセッションに切り替えるには、次のコマンド を入力します。 switch sess sess はセッション番号です。 たとえば、次のように入力します。 switch 3 これで、セッション 3 に切り替わります。switch キーワードはオプ ションです。たとえば、次のように入力することもできます。 3 この場合もセッション 3 に切り替わります。 セッションのクローズ セッションをクローズするには、次のコマンドを入力します。 close sess sess はセッション番号です。 たとえば、次のように入力します。 close 3 これで、セッション 3 がクローズします。 セッション番号を指定しない場合、dcsp は現在のセッションをク ローズします。 75 サーバ・エントリの操作 サーバ・エントリの操作 サーバ・エントリの追加と変更 セッションをオープンすると、そのセッションに関連付けられている サーバ・エントリを追加または変更できます。 注意 サーバ・エントリを追加または変更すると、dscp は、master 行 と query 行の両方を自動的に作成または変更します。interfaces ファ イルのエントリにある master 行と query 行には、まったく同じ情報 が含まれています。 各サーバ・エントリは、一連の属性で構成されています。サーバ・エ ントリを追加または変更するときには、dscp が各属性についての情 報を要求します。表 4-2 では、各属性について説明します。 表 4-1: サーバの属性 76 サーバ・エント リを追加または 変更するときの、 属性の変更 追加:不可 変更:不可 属性 サーバ・オブジェ クトのバージョン 値のタイプ 整数 デフォルト値と 有効な値 110 サーバ名 文字列 該当なし 追加:該当なし 変更:不可 サーバ・サービス 文字列 SQL SERVER 追加:可 変更:不可 サーバ・ ステータス 整数 追加:不可 変更:不可 トランスポートの タイプ 文字列 4 有効な値: 1 アクティブ 2 停止 3 失敗 4 不定 tcp 有効な値:decnet、 spx、tcp、tli、spx、 tli tcp 追加:可 変更:可 第4章 属性 トランスポート・ アドレス セキュリティ・ メカニズム デフォルト値と 有効な値 なし 有効な値は、指定さ れたトランスポート のタイプが認識する 文字列 なし 文字列 有効な値は、ユーザ 注意 サーバ・エントリ の objectid.dat に定義 ごとに、セキュリ されているオブジェ ティ・メカニズムの文 クト識別子に対応す 字列を 20 個まで追加 る文字列 できる。 値のタイプ 文字列 dscp の使用 サーバ・エント リを追加または 変更するときの、 属性の変更 追加:可 変更:可 追加:可 変更:可 サーバ・エントリの追加 1 サーバ・エントリを追加するには、次のコマンドを入力します。 add servername 追加モードに切り替わります。これで、サーバ・エントリを追加 できます。他の dscp コマンドを実行する場合は、このモードを 終了する必要があります。追加モードでは、dscp は servername に 関する情報を要求します。 2 次のいずれかを行います。 • 各属性の値を入力する • [Return] キーを押して、角カッコ ([ ]) に示されているデフォ ルト値を使用する たとえば、次のように入力します。 add myserver dscp は以下の情報を要求します。 Service: [SQL Server] Transport Type: [tcp] tcp Transport Address: victory 8001 Security Mechanism []: サーバ・エントリには、関連するトランスポートのタイプとトラ ンスポート・アドレスの組み合わせを 20 個まで指定できます。 77 サーバ・エントリの操作 サーバの属性については、表 4-1(76 ページ ) エラー! ブックマーク名 が指定されていません。を参照してください。 1 追加モードを終了するには、次のコマンドを入力します。 #done サーバ・エントリの変更 dscp を使用して、interfaces ファイルにあるバージョン、サービス、 およびステータスのエントリを変更することはできません。 1 サーバ・エントリを変更するには、次のコマンドを入力します。 mod servername 変更モードに切り替わります。これで、サーバ・エントリを変更 できます。他の dscp コマンドを実行する場合は、このモードを 終了する必要があります。変更モードでは、dscp は servername に 関する情報を要求します。 2 次のいずれかを行います。 • 各属性の値を入力する • [Return] キーを押して、角カッコ ([ ]) に示されているデフォ ルト値を使用する たとえば、次のように入力します。 mod myserver dscp は以下の情報を要求します。 Version: [1] Service: [SQL Server] Open Server Status: [4] Address: Transport Type: [tcp] Transport Address: [victory 1824] victory 1826 Transport Type: [tcp] Transport Address: [victory 1828] Transport Type: [] Security Mechanism []: サーバの属性については、表 4-1(76 ページ ) エラー! ブックマーク名 が指定されていません。を参照してください。 1 アドレスを削除するには、次のコマンドを入力します。 #del 78 第4章 2 dscp の使用 変更モードを終了するには、次のコマンドを入力します。 #done サーバ・エントリのコピー dscp では、1 つのセッション内、または複数のセッション間でサー バ・エントリをコピーできます。サーバ・エントリをコピーする場 合、4 つのオプションがあります。 オプションは次のとおりです。 • 現在のセッションに、新しい名前でサーバ・エントリをコピーする • 別のセッションにサーバ・エントリをコピーする • 別のセッションに、新しい名前でサーバ・エントリをコピーする • 別のセッションに、現在のセッションのエントリをすべてコピー する セッション内でのコピーによる新しいサーバ・エントリの作成 1 つのセッション内で、コピーによって新しいサーバ・エントリを作 成するには、次のコマンドを入力します。 copy name1 to name2 たとえば、次のように入力します。 copy myserver to my_server dscp は、"myserver" とまったく同じエントリ "my_server" を作成し ます。この新しいエントリを変更し、元のエントリには変更を加えな いようにします。 複数のセッション間でのエントリのコピー • 名前を変更しないでサーバ・エントリをコピーするには、次のコ マンドを入力します。 copy name1 to sess たとえば、次のように入力します。 copy myserver to 2 79 サーバ・エントリの操作 dscp は、現在のセッションにある "myserver" エントリをセッ ション 2 にコピーします。 • サーバ・エントリをコピーするときに新しい名前を付けるには、 次のコマンドを入力します。 copy name1 to sess name2 たとえば、次のように入力します。 copy myserver to 2 my_server dscp は、現在のセッションにある "myserver" エントリをセッ ション 2 にコピーし、コピーされたエントリの名前を "my_server" に変更します。 すべてのエントリを別のセッションにをコピーする 現在のセッションにあるすべてのエントリを別のセッションにコピー するには、次のコマンドを入力します。 copyall sess たとえば、次のように入力します。 copyall 2 dscp は、現在のセッションにあるすべてのエントリをセッション 2 に コピーします。 サーバ・エントリの表示 • セッションに関連付けられているサーバ・エントリ名を表示する には、次のコマンドを入力します。 list • セッションに関連付けられているサーバ・エントリの属性を表示 するには、次のコマンドを入力します。 list all サーバの属性については、表 4-1(76 ページ ) エラー! ブックマーク名 が指定されていません。を参照してください。 80 第4章 dscp の使用 サーバ・エントリの内容の表示 サーバ・エントリの内容を表示するには、次のコマンドを入力します。 read servername たとえば、次のように入力します。 read myserver 次の情報が表示されます。 DIT base for object: interfaces Distinguish name: myserver Server Version: 1 Server Name: myserver Server Service: SQL Server Server Status: 4 (Unknown) Server Address: Transport Type: tcp Transport Addr: victory 1824 Transport Type: tcp Transport Addr: victory 1828 サーバの属性については、表 4-1(76 ページ ) エラー! ブックマーク名 が指定されていません。を参照してください。 サーバ・エントリの削除 セッションに関連付けられている 1 つまたはすべてのエントリを削除 できます。 • 1 つのサーバ・エントリを削除するには、次のコマンドを入力し ます。 del servername たとえば、次のように入力します。 del myserver dscp は "myserver" のエントリを削除します。 • セッションに関連付けられているすべてのエントリを削除するに は、次のコマンドを入力します。 delete-all 81 dscp の終了 dscp の終了 dscp を終了するには、次のいずれかのコマンドを入力します。 exit quit 82 第4章 dscp の使用 dscp ユーティリティ・コマンドのクイック・リファレンス dcsp プロンプトにコマンドを入力して関数を実行できます。表 4-2 は、利用できるコマンドのクイック・リファレンスです。 表 4-2: dscp コマンド コマンド add servername addattr servername close [sess] config 説明 サーバ・エントリ servername を現在のセッションに追加する。dscp は、 servername についての情報を要求する。角カッコ ([ ]) に示されているデ フォルト値を使用する場合は [Return] キーを押す。追加モードを終了す るには、"#done" と入力する。 現在のセッションのサーバ・エントリ servername に属性を追加する。 番号 sess に指定されたセッションをクローズする。sess が指定されていな い場合は、現在のセッションをクローズする。 使用している Sybase 環境の設定情報を表示する。 copy name1 to {name2 | 現在のセッションのサーバ・エントリ name1 を次の位置にコピーする。 sess | sess name2} • 現在のセッションのサーバ・エントリ name2 • セッション sess copyall to sess del servername • セッション sess のサーバ・エントリ name2 現在のセッションのサーバ・エントリをすべてセッション sess にコピー する。 現在のセッションのサーバ・エントリ servername を削除する。 delete-all 現在のセッションのサーバ・エントリをすべて削除する。 exit dscp を終了する。 help、?、h オンライン・ヘルプを表示する。 現在のセッションのサーバ・エントリを表示する。エントリの名前を表 示するには、list コマンドを使用する。各エントリの属性を表示するに は、list all コマンドを使用する。 現在のセッションのサーバ・エントリ servername を変更する。dscp は、 servername についての情報を要求する。角カッコ ([ ]) に示されているデ フォルト値を使用する場合は [Return] キーを押す。変更モードを終了す るには、"#done" と入力する。 指定されたディレクトリ・サービスのセッションをオープンする。 dsname は、ディレクトリ・サービス名を表す。dsname に値を指定しな い場合、このコマンドはデフォルトのディレクトリ・サービスのセッ ションをオープンする。セッションをオープンするには、dsname に "InterfacesDriver" を指定する。 dscp を終了する。 サーバ・エントリ servername の内容を表示する。 list [all] mod servername open [dsname] quit read servername sess [switch] sess オープンされているすべてのセッションを表示する。 セッション番号 sess を現在のセッションにする。 83 dscp ユーティリティ・コマンドのクイック・リファレンス 84 第 5 章 ユーティリティ・コマンド・ リファレンス この章は、以下のユーティリティ・プログラム・コマンドのリ ファレンス・ページです。 項名 backupserver bcp bcp_dce ページ 91 96 114 buildmaster charset 134 137 dataserver defncopy 138 141 defncopy_dce dscp 147 153 dscp_dce dsedit 154 155 dsedit_dce extractjava 156 157 installjava isql_dce langinstall 160 175 184 optdiag showserver 187 194 sqlloc sqllocres 195 197 sqlupgrade sqlupgraderes 198 199 srvbuild srvbuildres 200 201 startserver sybload 202 205 sybsetup 207 85 ユーティリティ・プログラムの起動 ユーティリティ・プログラムの起動 UNIX シェルのシステム・プロンプトで、ユーティリティ・プログラ ム・コマンドを入力します。 バックスラッシュ (\)、アスタリスク (*)、スラッシュ (/)、スペースな ど、シェルにとって特別な意味を持つ文字は、引用符で囲みます。 バックスラッシュ (\) を特殊文字の前に付けて、それらの文字を「エ スケープ」することができます。これによって、シェルはこの特殊文 字を解釈しなくなります。 表 5-1 は、UNIX プラットフォーム用の Adaptive Server で利用できる すべてのユーティリティの説明と実行プログラムのリストを示してい ます。 注意 表 5-1 で示したユーティリティ・プログラムでは、-P パラメータ を使用してパスワードを入力できる場合があります。セキュリティを 考慮する必要がある場合は、このパラメータを使ってパスワードを指 定しないでください。他のユーザにパスワードを見られるおそれがあ ります。-P パラメータを使用せずに、通常のログインを行って、 Adaptive Server がパスワードの入力を要求するプロンプトを表示す るようにしてください。 表 5-1: UNIX で利用できるユーティリティ・プログラム ユーティリティ backupserver bcp buildmaster charset dataserver 文字セット・ファイルとソート順ファイルをロードする。 実行形式の Adaptive Server プログラム defncopy 特定のビュー、ルール、デフォルト、トリガ、プロシー ジャ、レポートの定義を、データベースからオペレーティ ング・システム・ファイルに、またはオペレーティング・ システム・ファイルからデータベースにコピーする。 コマンド・ライン・モードで interfaces ファイルのサー バ・エントリを表示したり、編集したりする。 interfaces ファイルのネットワーク接続情報を作成した り、変更したりする。 dscp dscp_dce 86 説明 実行形式の Backup Server プログラム ユーザが指定したフォーマットで、データベース・テー ブル内のローをオペレーティング・システム・ファイル にコピーしたり、オペレーティング・システム・ファイ ルからデータベース・テーブル内のローにコピーする。 マスタ・デバイスを構築して、そこに master、model、 tempdb の各データベースを作成する。 第5章 ユーティリティ dsedit extractjava installjava isql langinstall showserver sqlloc sqllocres sqlupgrade sqlupgraderes srvbuild srvbuildres startserver sybload sybsetup ユーティリティ・コマンド・リファレンス 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・イン タフェース ) を使用して、interfaces ファイルのサーバ・ エントリを表示したり、編集したりする。 保持された JAR を Adaptive Server からクライアント・ ファイルにコピーする。 JAR をクライアント・ファイルから Adaptive Server に インストールする。 Adaptive Server の対話型 SQL パーサ Adaptive Server に新しい言語をインストールする。 ローカルのマシンで現在稼働している Adaptive Server と Backup Server を表示する。 GUI モードで、Adaptive Server の言語、文字セット、 ソート順のデフォルトをインストールしたり、変更した りする。 コマンド・ライン・モードで、Adaptive Server の言語、 文字セット、ソート順のデフォルトをインストールした り、変更したりする。 GUI モードで、現在インストールされている Adaptive Server のリリースを最新のリリースへアップグレード する。 コマンド・ライン・モードで、現在インストールされて いる Adaptive Server のリリースを最新のリリースへ アップグレードする。 GUI モードで、キー設定属性のデフォルトまたはユーザ 定義の値を使用して、Adaptive Server、Backup Server、 Monitor Server、XP Serve を新しく作成する。 コマンド・ライン・モードで、キー設定属性のデフォル トまたはユーザ定義の値を使用して、Adaptive Server、 Backup Server、Monitor Server、XP Serve を新しく作成 する。 Adaptive Server または Backup Server を起動する。 コマンド・ラインで、配布メディアから Sybase 製品を アップロードし、Sybase インストール・ディレクトリを 作成する。 GUI インタフェースを使用して、単一のロケーションか ら Adaptive Server をインストールしたり、設定したり する。 87 ユーティリティ・クイック・リファレンス ユーティリティ・クイック・リファレンス この項はユーティリティのクイック・リファレンスです。ユーティリ ティは以下のカテゴリに分類されています。 • インストール・ユーティリティと設定ユーティリティ • 言語、文字セット、ソート順の設定ユーティリティ • サーバ起動ユーティリティ • データベース作成ユーティリティと操作ユーティリティ • 情報収集ユーティリティ インストール・ユーティリティと設定ユーティリティ データベースのインストールや設定には、以下のユーティリティを使 用します。 • dscp - interfaces ファイルのサーバエントリをコマンド・ライン から表示、編集できます。 • dsedit - X11/Motif ベースの GUI ( グラフィカル・ユーザ・イン タフェース ) を使用して、interfaces ファイルのサーバ・エントリ を表示、編集できます。 • sqlupgrade - X11/Motif ベースの GUI ( グラフィカル・ユーザ・ インタフェース ) を使用して、現在インストールされている Adaptive Server のリリースを最新のリリースへアップグレードし ます。 • sqlupgraderes - リソース・ファイルを使用して、現在インス トールされている Adaptive Server のリリースを最新のリリース へアップグレードします。 • srvbuild - X11/Motif ベースの GUI ( グラフィカル・ユーザ・イン タフェース ) を使用して、キー設定属性のデフォルトまたはユー ザ定義の値を使って Adaptive Server、Backup Server、Monitor Server、XP Serve を新しく作成します。 • srvbuildres - リソース・ファイルを使用してキー設定属性の値を 指定し、Adaptive Server、Backup Server、Monitor Server、XP Server を新しく作成します。 • 88 sybload - Sybase 製品を配布メディアからアップロードし、 Sybase インストール・ディレクトリを作成します。 第5章 • ユーティリティ・コマンド・リファレンス sybsetup - X11/Motif ベースの GUI ( グラフィカル・ユーザ・イ ンタフェース ) を使用して、単一のロケーションから Adaptive Server をインストール、設定します。 言語、文字セット、ソート順の設定ユーティリティ 言語、文字セット、ソート順を設定するには、以下のユーティリティ を使用します。 • charset - 文字セット・ファイルとソート順ファイルをロードし ます。 • langinstall - Adaptive Server に新しい言語をインストールしま す。 • sqlloc - X11/Motif ベースの GUI ( グラフィカル・ユーザ・イン タフェース ) を使用して、Adaptive Server 用の言語、文字セッ ト、ソート順のデフォルトをインストールしたり、変更したりし ます。 • sqllocres - リソース・ファイルを使用して、Adaptive Server 用の 言語、文字セット、ソート順のデフォルトをインストールした り、変更したりします。 サーバ起動ユーティリティ サーバを手動で起動するには、以下のユーティリティを使用します。 • backupserver - Backup Server 実行プログラムを起動します。 Backup Server を手動で起動する場合は、このユーティリティで はなく startserver コマンドを使用します。 • dataserver - Adaptive Server 実行プログラムを起動します。 Adaptive Server を手動で起動する場合は、このユーティリティで はなく startserver コマンドを使用します。 • histserver - Historical Server 実行プログラムを起動します。 Historical Server を手動で起動する場合は、このユーティリティ ではなく histserver コマンドを使用します。 89 ユーティリティ・クイック・リファレンス • monserver - Monitor Server 実行プログラムを起動します。 Monitor Server を手動で起動する場合は、このユーティリティで はなく monserver コマンドを使用します。 • startserver - Adaptive Server と Backup Server を起動します。 データベース作成ユーティリティと操作ユーティリティ データベースの作成や操作には、以下のユーティリティを使用します。 • bcp - ユーザが指定したフォーマットで、データベース・テーブ ルをオペレーティング・システム・ファイルに、または、そのオ ペレーティング・システム・ファイルからデータベース・テーブ ルにコピーします。 • buildmaster - マスタ・デバイスを作成し、そこに master、model、 tempdb の各データベースを作成します。 • defncopy - 特定のビュー、ルール、デフォルト、トリガ、プロ シージャの定義を、データベースからオペレーティング・システ ム・ファイルに、またはオペレーティング・システム・ファイル からデータベースにコピーします。 • extractjava - 保持された JAR とそれに含まれるクラスを Adaptive Server からクライアント・ファイルにコピーします。 • installjava - JAR をクライアント・ファイルから Adaptive Server データベースにインストールします。 • isql - Adaptive Server の対話型 SQL パーサです。 • optdiag - オプティマイザ統計値を表示します。または、更新さ れた統計値をシステム・テーブルにロードします。 情報収集ユーティリティ 情報の収集には、以下のユーティリティを使用します。 • 90 showserver - ローカルのマシンで現在稼働している Adaptive Server と Backup Server を表示します。 第5章 ユーティリティ・コマンド・リファレンス backupserver 説明 実行形式の Backup Server プログラムです。 構文 backupserver [-Cserver_connections] [-Sb_servername] [-Iinterfaces_file] [-eerror_log_file] [-Msybmultbuf_binary] [-Nnetwork_connections] [-Ttrace_value] [-LSybase_language_name] [-JSybase_character_set_name] [-Pactive_service_threads] [-ctape_config_file] または backupserver -v パラメータ -Cserver_connections Backup Server のサーバ接続数を指定します。Backup Server には、 次のものが必要です。 • 各ダンプ・セッションに 2 接続 • 各ロード・セッションに 1 接続 • ボリューム変換メッセージに 1 接続 同時に行うことが予想されるダンプとロードのセッション数の 3 倍 を最大数として考慮してください。サーバ接続数のデフォルト値 は、30 です。 -Sb_servername 起動する Backup Server の名前を指定します。デフォルトは、 SYB_BACKUP です。このパラメータには、interfaces ファイルに ある Backup Server 名を指定してください。 -Iinterfaces_file Backup Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を省略した場合、backupserver は、SYBASE の環境変数に指定されたディレクトリにある interfaces という名前のファイルを探します。 91 backupserver -eerror_log_file Backup Server のエラー・ログ・ファイルの名前とロケーションを 指定します。このエラー・ログ・ファイルは、Open Server の内部 エラー、sybmultbuf エラー、Backup Server を停止させるエラー、 および接続解除セッションのエラーをレポートするときに使用され ます。それ以外のエラーはすべて、dump database、dump transaction、load database、load transaction のコマンド内で notify を使って指定された宛先に送られます。 -Msybmultbuf_binary sybmultbuf 実行プログラムのフル・パス名を指定します。このパラ メータは、Sybase インストール・ディレクトリの bin ディレクトリ以 外のディレクトリから Backup Server を起動した場合、または sybmultbuf の診断プログラムを使用する場合にだけ使用してください。 -Nnetwork_connections マスタ Backup Server から開始するネットワーク接続 (DBPROCESS) の総数を指定します。デフォルト値は 25 です。 -Ttrace_value trace_value をビット・マスク (2 進数 ) として解釈します。 trace_value の中で 1 になっているビットは、Open Server のトレー ス・フラグではオンに対応します。コマンド・ラインで複数の -T を指定した場合は、最後に指定した -T の値によって、前の -T パラ メータの値は無効になります。trace_value は、正の整数でなければ なりません。 -LSybase_language_name Backup Server のデフォルト言語を指定します。指定されていない と、Backup Server は、LC_ALL、または LANG 環境変数によって 指定されたロケールを使用します。これらの変数が設定されていな い場合、Backup Server は、locales.dat の「デフォルト」エントリを 検索します。 注意 -L パラメータは環境変数 LANG に設定された値を無効にしませ ん。 -JSybase_character_set_name Backup Server のデフォルト文字セットを指定します。 92 第5章 ユーティリティ・コマンド・リファレンス -Pactive_service_threads 複数のダンプ/ロード・オペレーション中にストライプの数を増や すことができます (1 オペレーションあたりの最大ストライプ数は 32)。システム全体での最大ストライプ数のデフォルトは、ダンプ とロードをすべて合わせて 48 です。 -ctape_config_file dump database または dump transaction を実行する前に、テープ設 定ファイルの名前とロケーションを指定して、テープ・デバイスの 設定情報を検索します。-c を指定しないと、テープ設定ファイルの デフォルトのパス名が $SYBASE/backup_tape.cfg となります。 -v backupserver ソフトウェアのバージョン番号と版権メッセージを表 示して、終了します。 93 backupserver -Vlevel_number Backup Server エラー・ログに出力するメッセージを制限します。 level_number 変数によって、Backup Server におけるエラーの詳細 度 (-V) が決まります。 • -V3 - dump コマンドまたは load コマンドからの正常終了メッ セージと以下のメッセージだけを表示します。 Backup Server と sybmultbuf からのエラー・メッセージ その他の sybmultbuf メッセージ ボリューム変更メッセージ Open Server メッセージ トレース出力メッセージ System モジュールおよび Tape Auto Config モジュールからの 情報メッセージ • -V2 - 以下のメッセージを表示します。 すべての -V3 メッセージ ファイル作成メッセージとファイル・マウント・メッセージ • -V1 - 以下のメッセージを表示します。 すべての -V2 メッセージ フェーズ・メッセージ • -V0 ( デフォルト ) - 以下のメッセージを表示します。 バックアップの進行状況を含むすべてのメッセージ この制限は、dump コマンドまたは load コマンドの NOTIFY= パ ラメータに指定されたクライアントまたはコンソールに送られ るメッセージには適用されません。 このオプションは、以下のメッセージ・タイプのロギングにも 影響しません。 94 • Open Server メッセージ • bs_traceprint からのトレース出力メッセージ • sybmultbuf メッセージ 第5章 使用法 • ユーティリティ・コマンド・リファレンス backupserver プログラムを直接起動するのではなく、startserver コマンドを使用して、Backup Server を起動してください。デ フォルト値を変更する場合は、Sybase インストール・ディレクト リにある RUN_servername ファイルを編集します。詳細について は、startserver のリファレンス・ページを参照してください。 • -S パラメータで Backup Server 名を指定せず、環境変数 DSLISTEN も設定していない場合には、backupserver はデフォル トの Backup Server 名である SYB_BACKUP を使用します。環境 変数 DSLISTEN の値はこのデフォルト値を無効にします。また、 -S パラメータを指定すると、デフォルト値と DSLISTEN に指定さ れた値の両方が無効になります。 • Backup Server と、Backup Server を介してダンプやロードを直接 行う Adaptive Server では、できるかぎり同じ interfaces ファイル を共用してください。Backup Server で使用する interfaces ファイ ルには、次のエントリが必要です。 • Backup Server • 上記の Backup Server とやりとりする他の Backup Server • Backup Server では、トレース・フラグをセットすると実行中の オペレーションについての情報が表示されるので、Backup Server で発生する問題のデバッグに利用することができます。トレー ス・フラグの詳細については、 『Open Server Server-Library/C リ ファレンス・マニュアル』を参照してください。UNIX の Backup Server は、-T に対応する Open Server 定義の SRV__TR 記号をサ ポートしません。 • Backup Server が -L パラメータと -J パラメータによって指定され た locales ディレクトリと charsets ディレクトリを検出できなかっ た場合、またはこれらのパラメータに言語と文字セットの不正な 組み合わせが指定されている場合、Backup Server は、エラー・ メッセージを発行して、デフォルトの言語と文字セットを使用し ます。 参照 ユーティリティ startserver 95 bcp bcp 説明 ユーザが指定したフォーマットで、データベース・テーブルをオペレー ティング・システム・ファイルに、または、そのオペレーティング・シ ステム・ファイルからデータベース・テーブルにコピーします。 構文 bcp [[database_name.]owner.][view_name | table_name [:partition_id]] {in | out} datafile [-c] [-E] [-n] [-N] [-X] [-a display_charset] [-A packet_size] [-b batchsize] [-e errfile] [-f formatfile] [-F firstrow] [-g id_start_value] [-I interfaces_file] [-J client_charset] [-L lastrow] [-m maxerrors] [-P password] [-q datafile_charset] [-r row_terminator] [-R remote_server_principal] [-S server] [-t field_terminator] [-T text_or_image_size] [-U username] [-z language] または bcp -v パラメータ database_name コピーするテーブルがデフォルト・データベース内または master 内に ある場合は、このパラメータはオプションとして使用できます。そう でない場合は、データベース名を指定しなければなりません。 owner ユーザかデータベース所有者がコピーするテーブルを所有している 場合はオプションです。所有者を指定しない場合は、bcp はユーザ が所有している名前のテーブルを最初に検索します。次に、データ ベース所有者が所有しているテーブルを検索します。それ以外の ユーザがテーブルを所有している場合は、所有者の名前を指定しな ければなりません。指定しないと、bcp は失敗します。 view_name コピー・アウトするビューの名前です。 96 第5章 ユーティリティ・コマンド・リファレンス table_name コピーするデータベース・テーブルの名前です。Transact-SQL の 予約語をテーブル名に使用することはできません。 分割番号 partition_number はテーブル table_name にはありません。 : partition_id コピー先の分割の識別子です。 in | out コピーの方向 ( 宛先 ) を指定します。in ( コピー・イン ) はファイル からデータベース・テーブルへコピーします。out ( コピー・アウ ト ) はデータベース・テーブルまたはビューからファイルへコピー します。 datafile オペレーティング・システム・ファイルのフル・パス名です。パス 名は、1 ~ 255 文字で指定します。 -c データ・ファイル内の全カラムのデフォルト記憶タイプとして、 char データ型を使用してコピー・オペレーションを実行します。 プラットフォーム間でデータを共有するときに、このフォーマット を使用してください。このパラメータは、デフォルトの記憶タイプ として char を使用し、プレフィクスは付きません。デフォルトの フィールド・ターミネータとして \t ( タブ ) を、デフォルトの ロー・ターミネータとして \n ( 改行 ) を使用します。 97 bcp -E テーブルの IDENTITY カラムの値を明示的に指定します。 デフォルトでは、IDENTITY カラムがあるテーブルにデータをバル ク・コピーするときに、bcp は各ローに IDENTITY カラムのテンポ ラリの値 0 を割り当てます。これは、テーブルへデータをコピーす る場合にだけ有効です。bcp はデータ・ファイルから ID カラムの 値を読み込みますが、それをサーバへは送りません。代わりに、 bcp がテーブルへ各ローを挿入するときに、サーバが 1 で始まるユ ニークで連続した IDENTITY カラム値を割り当てます。テーブル へデータをコピーするときに -E フラグを指定した場合、bcp はデー タ・ファイルからこの値を読み込み、テーブルへこの値を挿入する サーバへそれを送ります。挿入されるローの数が IDENTITY カラ ム値の最大値を超える場合、Adaptive Server はエラーを返します。 -E パラメータは、バルク・コピー・アウトには影響しません。-N パラメータを指定しないと、Adaptive Server は ID カラムをデー タ・ファイルへコピーします。 -E フラグと -g フラグは同時に指定できません。 -n ネイティブの ( オペレーティング・システム ) フォーマットを使用 して、コピー・オペレーションを実行します。-n パラメータを指定 すると、bcp は各フィールドに対するプロンプトを表示しません。 ネイティブ・データ・フォーマットのファイルは人間が判読できる フォーマットにはなっていません。 警告 ! データ・リカバリやサルベージ、または緊急の問題解決のため に、ネイティブ・フォーマットを使用して bcp を実行しないでくださ い。異なるハードウェア・プラットフォーム間、異なるオペレーティ ング・システム間、異なるメジャー・リリースの Adaptive Server 間 で、ネイティブ・フォーマットを使用して bcp を実行しないでくださ い。ネイティブ・フォーマットを使用して bcp を実行する場合は、 フィールド・ターミネータ (-t) やロー・ターミネータ (-r) を使用しな いでください。予期しない結果となったり、データが破損する可能性 があります。ネイティブ・フォーマットを使用して bcp を実行した場 合、Adaptive Server へ再ロードできないフラット・ファイルが作成 され、データのリカバリができなくなることがあります。bcp を文字 フォーマットで再実行できない場合 ( たとえば、テーブルがトラン ケートされたり削除された場合、ハードウェアが損傷した場合、デー タベースが削除された場合など )、データはリカバリできません。 98 第5章 ユーティリティ・コマンド・リファレンス -N IDENTITY カラムをスキップします。ホスト・データ・ファイルが IDENTITY カラムの値のためのプレースホルダを含まない場合に データをコピー・インするとき、またはデータをコピー・アウトし てホスト・ファイルに IDENTITY カラム情報を含みたくないとき に、このオプションを使用してください。 データをコピー・インするときに、-N パラメータと -E パラメータ の両方を指定することはできません。 -X サーバへの接続において、アプリケーションがクライアント側のパ スワードを暗号化してログインの開始を指定します。bcp ( クライ アント ) は、パスワードを暗号化するようサーバに伝えます。サー バは、bcp がパスワードを暗号化するために使う暗号化キーを返送 します。そして、パスワードを受け取ると、サーバはそのキーを使 用してそのパスワードを確認します。 bcp がクラッシュすると、パスワードを含むコア・ファイルが作成 されます。暗号化オプションを使用していない場合、パスワード は、コア・ファイルにプレーン・テキストで表示されます。暗号化 オプションを使用した場合、パスワードは表示されません。 -a display_charset bcp を実行しているマシンの文字セットとは異なる文字セットを使 用する端末から、bcp を実行できます。-a を -J とともに使用する と、変換に必要な文字セット変換ファイル (.xlt ファイル ) が指定で きます。クライアントの文字セットがデフォルトの文字セットと同 じ場合にかぎり、-J を指定せずに -a を指定してください。 -a パラメータで指定した文字変換ファイルが存在しないか、その ファイル名の入力ミスがあると、次のエラー・メッセージが表示さ れます。 Error in attempting to determine the size of a pair of translation tables.:’stat’ utility failed. -A packet_size この bcp セッションで使用するネットワーク・パケット・サイズを 指定します。次に例を示します。 99 bcp bcp pubs2..titles out table_out -A 2048 この例では、bcp セッションのパケット・サイズを 2,048 バイトに 設定します。size は、default network packet size 設定変数と maximum network packet size 設定変数の間の値で、512 の倍数でな ければなりません。 大規模なバルク・コピー・オペレーションのパフォーマンスを向上 させるには、デフォルトのネットワーク・パケットよりも大きいサ イズを使用します。 -b batchsize バッチごとにコピーされるデータのロー数です ( デフォルトでは、1 つのバッチ処理ですべてのローがコピーされます )。バッチ処理は、 データベース・テーブルへのバルク・コピー・インだけに適用されま す。ファイルへのバルク・コピー・アウトには適用されません。 注意 バッチ・サイズを 1 に設定すると、Adaptive Server はコピー・ インする各ローに 1 つのデータ・ページを割り当てます。このオプ ションは、高速 bcp にのみ適用され、データ中の破損したローを見つ ける場合にのみ有効です。 -e errfile bcp がファイルからデータベースに転送できなかったローを保管す る、エラー・ファイルのフル・パス名です。bcp プログラムからの エラー・メッセージが端末に表示されます。このパラメータを指定 しないと、bcp はエラー・ファイルを作成しません。 -f format_file 同一テーブル内で前回の bcp 実行時の応答が保管してあるファイル のフル・パス名です。bcp に使用するフォーマットを入力すると、 bcp は、フォーマット・ファイルとしてその形式を保存するかどう かを尋ねてきます。フォーマット・ファイルの作成はオプションで す。デフォルトのファイル名は、bcp.fmt です。bcp プログラムは データのコピー時にフォーマット・ファイルを参照できるので、 ユーザは前に指定したフォーマットを繰り返し指定する必要はあり ません。コピー・インまたはコピー・アウトを行うのに、以前作成 したフォーマット・ファイルを使用する場合にだけ、この -f パラ メータを使用してください。このパラメータを使用しない場合、 bcp はフォーマット情報を対話形式で問い合わせてきます。 -F firstrow 入力ファイルからのコピー開始のロー番号です ( デフォルトでは、 先頭のロー )。 100 第5章 ユーティリティ・コマンド・リファレンス -g id_start_value データをコピー・インする場合の開始ポイントとして使用する、 IDENTITY カラムの値を指定します。 -g フラグと -E フラグは同時に指定できません。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、bcp は SYBASE 環境変数で指定されたディレクトリにある interfaces とい う名前のファイルを探します。 -J client_charset クライアントで使用する文字セットを指定します。bcp は、フィル タを使って client_charset と Adaptive Server 文字セットの間で入力 を変換します。 -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 -J に引数を指定しないと、文字セット変換は NULL に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。表 5-2 にプラットフォームのデフォルトを示します。 表 5-2: 異なるプラットフォームのデフォルトの文字セット プラットフォーム Sun Solaris、Digital UNIX、NCR、RS/6000 デフォルトの文字セット iso_1 HP-UX OS/2、Novell NetWare 386 Macintosh roman8 cp850 mac -J パラメータに不正な文字セットまたは認識できない文字セットを 指定すると、次のエラー・メッセージが表示されます。 Unrecognized localization object. Using default value 'iso_1'. Starting copy... => warning. 文字セットと関連するフラグの詳細については、『システム管理ガ イド』を参照してください。 101 bcp -L lastrow 入力ファイルからのコピー終了のロー番号です ( デフォルトでは、 最後のロー )。 -m maxerrors bcp がコピーをアボートするまでに許容される致命的でないエラー の最大数です。bcp は、挿入できない ( データ変換エラーまたは null 値を受け付けないカラムに null 値を挿入しようとしたために ) ローを除去し、拒否したローを 1 つのエラーとみなします。このパ ラメータを使用しない場合、bcp はデフォルト値 10 を使用します。 -P password Adaptive Server のパスワードを指定します。-P password を指定し ない場合、bcp はパスワードの入力を要求するプロンプトを表示し ます。パスワードが NULL の場合は、-P フラグだけを残してくだ さい。 -q datafile_charset bcp を実行して、クライアントの文字セットと異なる文字セットを使 用するファイル・システムに、またはこのファイル・システムから文 字データをコピーできます。-q を -J とともに使用すると、変換に必 要な文字セット変換ファイル (.xlt ファイル ) が指定できます。 日本語環境では、-q フラグは半角カタカナを全角カタカナに変換し ます。-J フラグと一緒に引数 zenkaku を入力して、クライアントの 日本語文字セット (sjis または eucjis) を示してください。zenkaku.xlt ファイルは、端末から Adaptive Server への変換だけを行い、 Adaptive Server から端末への変換は行いません。 -q パラメータで指定した文字変換ファイルが存在しないか、その ファイル名の入力ミスがあると、次のエラー・メッセージが表示さ れます。 Error in attempting to determine the size of a pair of translation tables.:’stat’ utility failed. 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットまたはクライアントの文字セットを ascii_7 に設定すると、7 ビット の ASCII 文字が、変換されずにクラ イアントとサーバの間で受け渡されます。その他の文字セットを使用 している場合は、変換エラーが発生します。文字セット変換の詳細に ついては、『システム管理ガイド』を参照してください。 102 第5章 ユーティリティ・コマンド・リファレンス -r row_terminator - ロー・ターミネータを指定します。 警告 ! ネイティブ・フォーマットを使って bcp を実行する場合は、-t パラメータまたは -r パラメータを使用しないでください。予期しない 結果となったり、データが破損する可能性があります。 注意 コマンド・ラインから -t パラメータまたは -r パラメータでターミ ネータを指定する場合は、UNIX オペレーティング・システムに対し て特殊な意味を持っている文字はエスケープしなければなりません (「例」(104 ページ ) を参照 )。特殊文字の前にバックスラッシュを付 けるか、または特殊文字を引用符で囲んでください。bcp がプロンプ トを表示する場合 ( 対話型モード ) は、その必要はありません。 -R remote_server_principal リモート・サーバのプリンシパル名を指定します。デフォルトで は、サーバのプリンシパル名はサーバのネットワーク名 (-S パラ メータまたは DSQUERY 環境変数で指定 ) と一致します。サーバの プリンシパル名とネットワーク名が一致しない場合は、-R パラ メータを使用してください。 -S server 接続する Adaptive Server の名前を指定します。引数なしで -S を指 定した場合、bcp は DSQUERY 環境変数によって指定されたサーバ を使用します。 -t field_terminator フィールド・ターミネータを指定します。 警告 ! ネイティブ・フォーマットを使って bcp を実行する場合は、-t パラメータまたは -r パラメータを使用しないでください。予期しない 結果となったり、データが破損する可能性があります。 -T text_or_image_size Adaptive Server が送信する text データまたは image データの最大 長をバイト単位で指定します。デフォルトは 32K です。text フィー ルドまたは image フィールドが -T の値またはデフォルトより大き い場合、bcp はオーバフローしたデータを送りません。 103 bcp -U username Adaptive Server ログイン名を指定します。username を指定しない 場合、bcp は現在のユーザのオペレーティング・システム・ログイ ン名を使用します。 -z language サーバが日付フォーマットと bcp のプロンプトおよびメッセージの 表示に使用する代替言語の公式名です。-z フラグを指定しないと、 bcp はサーバのデフォルト言語を使用します。言語はインストール 時に Adaptive Server に追加できます。インストール後でも、 langinstall ユーティリティまたは sp_addlanguage ストアド・プロ シージャを使用して言語を追加できます。 -z パラメータに不正な言語または認識できない言語を指定すると、 次のエラーメッセージが表示されます。 Unrecognized localization object. Using default value 'us_english'. Starting copy... => warning. -v bcp のバージョン番号と版権メッセージを表示して、オペレーティ ング・システムに戻ります。 例 bcp pubs2..publishers out pub_out -c -t , -r \\r この例では、publishers テーブルからデータをコピー・アウトします。 -c パラメータは文字フォーマット ( すべてのフィールドに char を使用 ) を指定します。-t field_terminator パラメータは、カンマで各フィールド を終了し、-r row_terminator パラメータは、改行キーで各行を終了しま す。bcp は、パスワードを入力するプロンプトのみを表示します。最後 の "r" の前にある 1 つ目のバックスラッシュは、2 つ目のバックスラッ シュをエスケープするためのもので、1 つのバックスラッシュだけが出 力されます。 bcp pubs2..publishers out pub_out Password: Enter the file storage type of field pub_id [char]: Enter prefix length of field pub_id [0]: Enter length of field pub_id [4]: Enter field terminator [none]: Enter the file storage type of field pub_name [char]: Enter prefix length of field pub_name [1]: Enter length of field pub_name [40]: Enter field terminator [none]: Enter the file storage type of field city [char]: 104 第5章 ユーティリティ・コマンド・リファレンス Enter prefix length of field city [1]: Enter length of field city [20]: Enter field terminator [none]: Enter the file storage type of field state [char]: Enter prefix length of field state [1]: Enter length of field state [2]: Enter field terminator [none]: Do you want to save this format information in a file? [Y-n] y Host filename [bcp.fmt]: pub_formStarting copy... 3 rows copied. Clock Time (ms.): total = 1 Avg = 0 (3000.00 rows per sec.) この例では、bcp が publishers テーブルから pub_out というファイルに データをコピーし、あとで Adaptive Server に再ロードする場合に使 用します。[Return] キーを押すと、プロンプトで指定したデフォルト が使用されます。publishers テーブルにデータをコピーするときにも 同じプロンプトが表示されます。 bcp pubs2..publishers in pub_out -f pub_form 保存された pub_form フォーマット・ファイルを使用して、Adaptive Server にこのデータのコピーを返します。 データ型の例を参照するには、プロンプト画面で「?」を入力してくだ さい。 Enter the file storage type of field ’pub_id’ [’char’]:? Invalid column type. Valid types are: <cr>: same type as Adaptive Server column. c : char T : text i : int s : smallint t : tinyint f : float m : money b : bit d : datetime x : binary I : image D : smalldatetime r : real M : smallmoney n : numeric e : decimal 105 bcp 上記のとおりに 1 文字を入力してください。 bcp pubs2..publishers in vt200_data -J iso_1 -q vt200 z french この例では、VT200 端末で使用している文字セットで作成したデー タ・ファイルを pubs2..publishers テーブルにコピーします。-q フラグ は、そのデータ・ファイルを変換します。-z フラグは、フランス語で bcp メッセージを表示します。 bcp pubs2..publishers in -a mac -J roman8 -q iso_1 この例では、Macintosh を使用して、iso_1 を使用している別のマシ ン上のファイル・システムとともに、roman8 を使用しているワーク ステーション上で bcp を実行していることを示します。 bcp pubs2..publishers out -T 40960 -A 4096 この例では、Adaptive Server が 4,096 バイトのパケット・サイズを使用 している 40K の text または image データを送信することを示します。 使用法 106 • bcp の詳細については、 「第 2 章 bcp を使用した Adaptive Server とのデータの転送」を参照してください。 • 大きなバッチの場合に、パラメータの変更によって bcp の動作が どのように変わるかについては、『パフォーマンス&チューニン グ・ガイド』を参照してください。 • 現在のバージョンの bcp では、-y sybase_directory パラメータは無 視されます。 • bcp は、データベース・テーブルまたはビューと、オペレーティ ング・システム・ファイル間で高速なデータ転送を行う便利な方 法です。bcp はさまざまなフォーマットでファイルの読み込みや 書き込みが可能です。bcp は、コピー・インではデータを既存の データベース・テーブルに追加し、コピー・アウトではファイル 内の古い内容を上書きします。 • オペレーティング・システム・ファイルからビューへはコピーで きません。 • コピーが完了すると、bcp は、コピーしたデータのローの数と、 コピーできなかったローがあればその数、コピーの総所要時間、 1 つのローの平均コピー所要時間 ( ミリ秒 )、さらに 1 秒あたりの コピーされたローの数を表示します。 第5章 ユーティリティ・コマンド・リファレンス • bcp は各バッチを 1 つのトランザクションの中でコピーします。 Adaptive Server がバッチ内のローを拒否した場合、トランザク ション全体がロールバックされます。デフォルトでは、bcp はす べてのローを 1 つのバッチでコピーします。-b パラメータでデ フォルトのバッチ・サイズを変更できます。Adaptive Server は各 バッチを 1 つの bcp オペレーションと考え、各バッチを個別の データ・ページに書き込み、先行のトランザクションが成功した かどうかに関係なく次のバッチに進みます。 • データをテーブルにコピーする場合、bcp はカラムに定義された デフォルトとユーザ定義のデータ型を調べます。しかし、bcp は 可能なかぎり迅速にデータをロードするためにルールとトリガを 無視します。 • 異なる端末を使用するサイトにホスト・データ・ファイルを送る 場合は、ファイルを作成するときに使用した datafile_charset を通 知します。 • ネイティブ・フォーマットを使って bcp を実行する場合は、-t パ ラメータまたは -r パラメータを使用しないでください。予期しな い結果となったり、データが破損する可能性があります。 高速 bcp と低速 bcp • bcp プログラムは、データと関連のあるインデックスやトリガを 持たないテーブルにデータをロードするために、最適化されてい ます。bcp は、インデックスやトリガを使用せずに、ロギングを 最小限にすることで、データをテーブルに最大限のスピードで ロードします。ページの割り付けはロギングしますが、ローの挿 入はロギングしません。 1 つまたは複数のインデックスかトリガを持つテーブルにデータ をコピーする場合は、低速の bcp が自動的に使用され、ローの挿 入をロギングします。これには、create table 文の一意性制約を使 用して暗黙的に作成されたインデックスも含まれます。しかし、 bcp は、テーブルに定義された他の整合性制約は適用しません。 • 高速 bcp を使用した場合、データ変更のログは取られないため、 dump database を使用してデータベースをバックアップしてくだ さい。高速バルク・コピーのあとでは、トランザクション・ログ にトランザクションが加えられていないため、dump transaction を使用できません。 107 bcp bcp の高速バージョンは、ロギングしないでデータを挿入するの で、システム管理者またはデータベース所有者は始めにシステ ム・プロシージャの sp_dboption, "DB" を true に設定してくださ い。このオプションが true に設定されていない場合、インデック スまたはトリガのないテーブルにデータをコピーしようとする と、Adaptive Server はエラー・メッセージを生成します。データ をファイルにコピー・アウトする場合、またはインデックスかト リガを持つテーブルにデータをコピー・インする場合は、このオ プションを設定する必要はありません。 デフォルトでは、新しく作成されたデータベースに対して select into/bulkcopy/pllsort オプションは false です。デフォルトを変更 するには、model データベースのこのオプションをオンにしてく ださい。 • 高速 bcp は、dump database の実行中は処理速度が低下します。 低速 bcp の実行時は、ログが非常に大きくなります。バルク・コ ピーが完了してから、dump database でデータベースのバック アップを取り、dump transaction でログをトランケートしてくだ さい。ログ・ダンプを行うために、trunc log on chkpt やスレッ ショルド・プロシージャを使用することもあります。 注意 適切な場所にインデックスまたはトリガのあるテーブルにデータ をコピーすることにより、パフォーマンスが大幅に低下します。膨大 な数のローをコピー・インする場合は、まず drop index ( または一意 性制約として作成されたインデックスには alter table) と drop trigger を使用してすべてのインデックスとトリガを削除し、データベース・ オプションの設定、テーブルへのデータのコピー、インデックスとト リガの再生成を行ってからデータベースをダンプすると、処理速度が 上がることがあります。インデックスとトリガの構成に必要なディス ク・スペースとして、クラスタード・インデックスにはデータに必要 な空き領域の約 1.2 倍分を、データに必要な容量とは別に割り当てる ようにしてください。 bcp プロンプトへの応答 -n ( ネイティブ・フォーマット ) か -c ( 文字フォーマット ) パラメータ を使用して、データをコピー・インまたはコピー・アウトする場合 は、-P パラメータでパスワードを指定していないと、パスワードの入 力を要求するプロンプトが表示されます。-n パラメータまたは、-c パ ラメータのどちらも指定していない場合は、bcp は、テーブルまたは ビューの各フィールド ( カラム ) に情報を入力するようにプロンプト を表示します。 108 第5章 • ユーティリティ・コマンド・リファレンス 各プロンプトでは、デフォルト値は角カッコで表示されます。 [Return] キーを押すと、この値を選択することができます。プロ ンプトには、次のものがあります。 • ファイルの記憶タイプ (char または有効な Adaptive Server データ型 ) • プレフィクスの長さ ( 後続のデータの長さをバイトで示す整数 ) • ファイルのデータの記憶領域の長さ • フィールド・ターミネータ ( 任意の文字列 ) ロー・ターミネータは、テーブルまたはファイルの最後のフィー ルドのフィールド・ターミネータです。 • 角カッコ内のデフォルト値は、該当するフィールドのデータ型と して適切な値を表しています。ファイルへコピー・アウトする場 合の最適な空き領域の使用方法は、次のとおりです。 • デフォルトのプロンプトを使用する • テーブルによって定義されたデータ型にすべてのデータをコ ピーする • 指定どおりにプレフィクスを使用する • ターミネータを使用しない • デフォルトの長さを使用する 表 5-3 に、bcp のプロンプト、デフォルトのユーザの応答、可能 な応答を示します。 表 5-3: bcp のプロンプト、デフォルトとユーザ応答 プロンプト File Storage Type ( ファイル記憶タ イプ ) デフォルト設定 可能なユーザの応答 次の 2 つを除くほとんどのフィール 人間が判読できるファ ドにデータベース記憶タイプを使用。 イル ( 暗黙の変換がサ ポートされる Adaptive varchar 用の char Server のデータ型 ) の varbinary 用の binary 作成または読み込みを 行う char。 Prefix Length ( プレフィクス長 ) 0 char データ型 ( 記憶タイプではな い ) および固定長のデータ型を指定 して定義されたフィールド プレフィクスが必要で ない場合は 0、それ以 外の場合はデフォルト。 1 その他のデータ型 2 char として保存された binary お よび varbinary 4 text および image 109 bcp プロンプト Storage Length ( 記憶領域の長さ ) Field or Row Terminator ( フィールド・ ターミネータまた はロー・ターミ ネータ ) デフォルト設定 char および varchar では、定義され た長さを使用する。 char として保存した binary および varbinary では、定義された長さの 2 倍の長さを使用する。 これ以外のデータ型では、トラン ケーションまたはデータのオーバ フローを回避するために必要な最 大長を使用する。 なし 可能なユーザの応答 デフォルト値または それ以上の値 最大 30 文字 注意 すべてのオペレーティング・システムで同じネイティブ・ データ型を使用しているわけではないので、異なるオペレーティ ング・システムからデータをコピーする場合は ( たとえば、NT から UNIX サーバへのコピー )、注意してください。 • プレフィクス長は、バイト単位で各データ値の長さを表す、1 バ イト、2 バイト、または 4 バイトの整数です。プレフィクス長は、 ホスト・ファイルのデータ値の直前に指定します。 • フィールド・ターミネータ文字列は、30 文字まで指定できます。 最も一般的なターミネータは、タブ ("\t" と入力し、最後のカラ ム以外のすべてのカラムに使用される )、および改行 ("\n" と入力 し、ローの最終フィールドに使用される ) です。これ以外に、 "\0" (null ターミネータ )、"\" ( バックスラッシュ )、"\r" ( リター ン ) があります。bcp はつねに、最初に現れたターミネータとし て指定されたものをターミネータとして判断するため、ターミ ネータを選択する場合は、使用している文字データでそのパター ンが使用されていないことを確認してください。 ターミネータまたはプレフィクスは、転送するデータの実際の長 さに影響します。 • 110 ファイルにコピー・アウトするエントリの長さが記憶領域の長 さより短い場合 (char、nchar、binary データ以外 )、次のフィー ルドに対するターミネータまたはプレフィクスがこのすぐあと に続き、記憶領域の長さ分の埋め込みは行われません。 第5章 • ユーティリティ・コマンド・リファレンス コピー・インする場合、"Length" プロンプトで示されるバイ ト数に達するか、ターミネータを検出するまで、bcp はデー タをコピーします。データが指定した長さを超える場合、bcp はターミネータを検出するまでデータをフラッシュします。 ターミネータがない場合、テーブルの記憶領域の長さが使用 されます。 • データベース・データ型ではなく、char (char、nchar、および binary 以外 ) としてフィールドが保管されている場合は、デフォ ルト長とプレフィクス、またはターミネータに使用する記憶領域 が少なくて済みます。bcp は、ターミネータまたはプレフィクス を使用して、記憶領域の有効な使用方法を決定します。bcp は、 デフォルトとして各フィールドで必要とされる記憶領域の最大容 量を推奨します。char データまたは varchar データの場合は、 bcp はどの長さも使用できます。 • char、nchar、または binary としてデータベースで定義された フィールドと null 値を使用できないフィールドには、つねにデー タベースで定義されたいっぱいの長さとなるようにスペース ( バ イナリには null バイト ) が埋め込まれます。timestamp データは、 binary(8) として扱われます。 varchar フィールドおよび varbinary フィールドのデータが、コ ピー・アウト用に指定した長さより長い場合は、bcp がファイル のデータを指定された長さに暗黙的にトランケートします。 • 表 5-4 と表 5-5 に、ファイルに入っている情報のプレフィクス長、 ターミネータ、およびフィールド長についての応答を示します。 "P" は保管されたテーブルのプレフィクス、"T" はターミネータ、 2 つのダッシュ (--) は追加領域をそれぞれ表します。省略記号 (...) は、各フィールドでパターンが繰り返されることを表します。 フィールドの長さはカラムごとに 8 です。"string" は、それぞれ 6 文字のフィールドを表します。 111 bcp 表 5-4: Adaptive Server char データ ターミネータなし ターミネータ プレフィクス長 = 0 string--string--... string--Tstring--T... プレフィクス長 = 1、 、2、 、 または 4 Pstring--Pstring--... Pstring--TPstring--T... 表 5-5: char 記憶タイプに変換された他のデータ型 ターミネータなし プレフィクス長 = 0 string--string--... プレフィクス長 = 1、 、2、ま 、ま たは 4 PstringPstring... ターミネータ stringTstringT... PstringTPstringT... • ファイル記憶領域の長さは、カラムに転送される最大データ量に ターミネータとプレフィクスを加えたものです。 • bcp は、null 値を含むデータ・カラムを可変長と認識するので、 プレフィクス長またはターミネータ長のどちらかを使用して、各 ローのデータの長さを記述してください。 データ型と記憶タイプ • bcp は、そのデータベースのデータ型か、または暗黙の変換がサ ポートされているデータ型として、ファイルにデータをコピー・ アウトできます。bcp は、基本のデータ型か、または暗黙の変換 がサポートされているデータ型として、ユーザ定義データ型をコ ピーします。データ型の変換に関する詳細については、 『Open Client DB-Library/C リファレンス・マニュアル』の dbconvert の 項と『Adaptive Server リファレンス・マニュアル』の 「Datatype Conversion Functions」を参照してください。 112 • カラムのファイル記憶タイプおよび長さは、データベース・テー ブルのカラムのタイプおよび長さと同じである必要はありません ( コピー・インされたタイプとフォーマットがデータベース・ テーブルの構造と矛盾する場合は、コピーは失敗します )。 • ネイティブ・フォーマットでホスト・ファイルに書き込まれたデー タは、その精度をすべて保持します。datetime 値および float 値は、 文字フォーマットに変換される際も精度を保持します。Adaptive Server は、通貨単位の 1 万分の 1 の精度で money 値を保管します。 しかし、money 値が文字フォーマットに変換される場合は、文字 フォーマット値は、近似値 2 桁しか記録されません。 第5章 • ユーティリティ・コマンド・リファレンス ファイルからデータベース・テーブルに文字フォーマットでデー タをコピーする前に、『Adaptive Server リファレンス・マニュア ル』を参照して、データ型の入力規則をチェックしてください。 bcp を使用してデータベースにコピーする文字データは、この規 則に従っていなければなりません。特に、(yy)yymmdd のような 区切り文字のない日付形式の場合は、年が最初に指定されていな いと、オーバフロー・エラーになる可能性があります。 参照 システム・ プロシージャ sp_audit, sp_dboption, sp_displayaudit システム・ テーブル sysaudits_01 – sysaudits_08 113 bcp_dce bcp_dce 説明 ユーザが指定したフォーマットで、データベース・テーブルをオペレー ティング・システム・ファイルに、または、そのオペレーティング・シ ステム・ファイルからデータベース・テーブルにコピーします。 構文 bcp_dce [[database_name.]owner.][view_name | table_name [:partition_id]] {in | out} datafile [-c] [-E] [-n] [-N] [-v] [-X] [-a display_charset] [-A packet_size] [-b batchsize] [-e errfile] [-f formatfile] [-F firstrow] [-g id_start_value] [-I interfaces_file] [-J client_charset] [-K keytab_file] [-L lastrow] [-m maxerrors] [-M LabelName LabelValue] [-labeled] [-P password] [-q datafile_charset] [-r row_terminator] [-R remote_server_principal] [-S server] [-t field_terminator] [-T text_or_image_size] [-U username] [-V [security_options] [-y sybase_dir] [-z language] [-Z security_mechanism] パラメータ database_name コピーするテーブルがデフォルト・データベース内または master 内に ある場合は、このパラメータはオプションとして使用できます。そう でない場合は、データベース名を指定しなければなりません。 owner ユーザかデータベース所有者がコピーするテーブルを所有している 場合はオプションです。所有者を指定しない場合は、bcp_dce は ユーザが所有している名前のテーブルを最初に検索します。次に、 データベース所有者が所有しているテーブルを検索します。それ以 外のユーザがテーブルを所有している場合は、所有者の名前を指定 しなければなりません。指定しないと、bcp_dce は失敗します。 114 第5章 ユーティリティ・コマンド・リファレンス table_name コピーするデータベース・テーブルの名前です。Transact-SQL の 予約語をテーブル名に使用することはできません。 分割番号 partition_number はテーブル table_name にはありません。 view_name コピー・アウトするビューの名前です。 in | out コピーの方向 ( 宛先 ) を指定します。in ( コピー・イン ) はファイル からデータベース・テーブルへコピーします。out ( コピー・アウ ト ) はデータベース・テーブルまたはビューからファイルへコピー します。 datafile オペレーティング・システム・ファイルのフル・パス名です。パス 名は、1 ~ 255 文字で指定します。 -c データ・ファイル内の全カラムのデフォルト記憶タイプとして、 char データ型を使用してコピー・オペレーションを実行します。 プラットフォーム間でデータを共有するときにこのフォーマットを 使用してください。このパラメータは、デフォルトの記憶タイプと して char を使用し、プレフィクスは付きません。デフォルトの フィールド・ターミネータとして \t ( タブ ) を、デフォルトの ロー・ターミネータとして \n ( 改行 ) を使用します。 115 bcp_dce -E テーブルの IDENTITY カラムの値を明示的に指定します。 デフォルトでは、IDENTITY カラムがあるテーブルにデータをバル ク・コピーするときに、bcp_dce は各ローに IDENTITY カラムのテ ンポラリの値 0 を割り当てます。これは、テーブルへデータをコ ピーする場合にだけ有効です。bcp_dce はデータ・ファイルから ID カラムの値を読み込みますが、それをサーバへは送りません。代わ りに、bcp_dce がテーブルへ各ローを挿入するときに、サーバが 1 で始まるユニークで連続した IDENTITY カラム値を割り当てます。 テーブルへデータをコピーするときに -E フラグを指定した場合、 bcp_dce はデータ・ファイルからこの値を読み込み、テーブルへこ の値を挿入するサーバへそれを送ります。挿入されるローの数が IDENTITY カラム値の最大値を超える場合、Adaptive Server はエ ラーを返します。 -E パラメータは、バルク・コピー・アウトには影響しません。-N パラメータを指定しないと、Adaptive Server は ID カラムをデー タ・ファイルへコピーします。 -E フラグと -g フラグは一緒に指定できません。 -labeled (secure Adaptive Server のみ ) データをインポートする場合、この パラメータはインポートするデータの各レコードの最初のフィール ドにすでにラベルがあることを示します。 データをエクスポートする場合、このパラメータは、最初のフィー ルドとしてコピー・アウトする各ローの sensitivity ラベルが必要で あることを示します。 116 第5章 ユーティリティ・コマンド・リファレンス -M label_name “label_value” (secure SQL サーバのみ ) マルチレベルのユーザがバルク・コピー のセッション・ラベルを設定できます。label_name の有効な値は次 のとおりです。 • curread ( 現在の読み込みレベル ) は、このセッション中に読み 込むことができるデータの初期レベルです。curread は、 curwrite より高いレベルであることが必要です。 • curwrite ( 現在の書き込みレベル ) は、このセッション中に書き 込むすべてのデータに適用される初期 sensitivity レベルです。 • maxread ( 最高読み込みレベル ) は、データを読み込むときの最 高レベルです。これは、マルチレベル・ユーザがセッション中 に設定できる curread の上限値です。maxread は、maxwrite より 高いレベルであることが必要です。 • maxwrite ( 最高書き込み込みレベル ) は、データを書き込むと きの最高レベルです。これは、マルチレベル・ユーザが、セッ ション中に設定できる curwrite の上限値です。maxwrite は、 minwrite と curwrite より高いレベルであることが必要です。 • minwrite ( 最低書き込み込みレベル ) は、データを書き込むとき の最低レベルです。これは、マルチレベル・ユーザが、セッ ション中に設定できる curwrite の下限値です。minwrite は、 maxwrite と curwritecurwrite より低いレベルであることが必要 です。 label_value はラベルの実際の値であり、システムで使用している人 間が判読できるフォーマットで表されます ("Company Confidential Personnel" など )。 -n ネイティブの ( オペレーティング・システム ) フォーマットを使用 して、コピー・オペレーションを実行します。このパラメータを指 定すると、各フィールドに対するプロンプトが表示されません。ネ イティブ・データ・フォーマットのファイルは人間が判読できる フォーマットにはなっていません。 警告 ! ネイティブ・フォーマットを使って bcp_dce を実行する場合は、 -t パラメータまたは -r パラメータを使用しないでください。予期しな い結果となったり、データが破損する可能性があります。 117 bcp_dce -N IDENTITY カラムをスキップします。ホスト・データ・ファイルが IDENTITY カラムの値のためのプレースホルダを含まない場合に データをコピー・インするとき、またはデータをコピー・アウトし てホスト・ファイルに IDENTITY カラム情報を含みたくないとき に、このオプションを使用してください。 データをコピー・インするとき、-N パラメータと -E パラメータの 両方を指定することはできません。 -v bcp_dce のバージョン番号と版権メッセージを表示して、オペレー ティング・システムに戻ります。 -X サーバに接続すると、bcp_dce はクライアント側のパスワードを暗 号化してログインを開始します。bcp_dce ( クライアント ) は、パ スワードを暗号化するようサーバに伝えます。サーバは、bcp_dce がパスワードを暗号化するために使う暗号化キーを返送します。そ して、パスワードを受け取ると、サーバはそのキーを使用してその パスワードを確認します。 bcp_dce がクラッシュすると、パスワードを含むコア・ファイルが 作成されます。暗号化オプションを使用していない場合、パスワー ドは、コア・ファイルにプレーン・テキストで表示されます。暗号 化オプションを使用した場合、パスワードは表示されません。 -a display_charset bcp_dce を実行しているマシンの文字セットとは異なる文字セット を使用する端末から、bcp_dce を実行できます。-a を -J とともに使 用すると、変換に必要な文字セット変換ファイル (.xlt ファイル ) が 指定できます。クライアントの文字セットがデフォルトの文字セッ トと同じ場合にかぎり、-J を指定せずに -a を指定してください。 -a パラメータで指定した文字変換ファイルが存在しないか、その ファイル名の入力ミスがあると、次のエラー・メッセージが表示さ れます。 Error in attempting to determine the size of a pair of translation tables.:’stat’ utility failed. -A packet_size この bcp_dce セッションで使用するネットワーク・パケット・サイ ズを指定します。次に例を示します。 118 第5章 ユーティリティ・コマンド・リファレンス bcp_dce pubs2..titles out table_out -A 2048 この例では、bcp_dce セッションのパケット・サイズを 2,048 バイ トに設定します。size は、default network packet size 設定変数と maximum network packet size 設定変数の間の値で、512 の倍数でな ければなりません。 ネットワーク・パケット・サイズを大きくすると、大規模なバル ク・コピー・オペレーションのパフォーマンスが向上します。 -b batchsize バッチごとにコピーされるデータのロー数です ( デフォルトでは、1 つのバッチ処理ですべてのローがコピーされます )。バッチ処理は、 データベース・テーブルへのバルク・コピー・インだけに適用されま す。ファイルへのバルク・コピー・アウトには適用されません。 注意 バッチ・サイズを 1 に設定すると、Adaptive Server はコピー・ インする各ローに 1 つのデータ・ページを割り当てます。このオプ ションは、高速 bcp_dce にのみ適用され、データ中の破損したローを 見つける場合にのみ有効です。 -e errfile bcp_dce がファイルからデータベースに転送できなかったローを保 管する、エラー・ファイルのフル・パス名です。bcp_dce プログラ ムからのエラー・メッセージが端末に表示されます。このパラメー タを指定しないと、bcp_dce はエラー・ファイルを作成しません。 -f format_file 同一テーブル内で前回の bcp_dce 実行時の応答が保管してあるファ イルのフル・パス名です。bcp_dce に使用するフォーマットを入力 すると、bcp_dce は、フォーマット・ファイルとしてその形式を保 存するかどうかを尋ねてきます。フォーマット・ファイルの作成は オプションです。デフォルトのファイル名は、bcp_dce.fmt です。 bcp_dce プログラムはデータのコピー時にフォーマット・ファイル を参照できるので、ユーザは前に指定したフォーマットを繰り返し 指定する必要はありません。コピー・インまたはコピー・アウトを 行うのに、以前作成したフォーマット・ファイルを使用する場合に だけ、このパラメータを使用してください。このパラメータを使用 しない場合、bcp_dce はフォーマット情報を対話形式で問い合わせ てきます。 -F firstrow 入力ファイルからのコピー開始のロー番号です ( デフォルトでは、 先頭のロー )。 119 bcp_dce -g id_start_value データをコピー・インする場合の開始ポイントとして使用する、 IDENTITY カラムの値を指定します。 -g フラグと -E フラグは一緒に指定できません。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、bcp_dce は SYBASE 環境変数で指定されたディレクトリにある interfaces とい う名前のファイルを探します。 -J client_charset クライアントで使用する文字セットを指定します。bcp_dce は、 フィルタを使って client_charset と Adaptive Server 文字セットの間 で入力を変換します。 -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 -J に引数を指定しないと、文字セット変換は NULL に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。表 5-2 にプラットフォームのデフォルトを示します。 表 5-6: 異なるプラットフォームのデフォルトの文字セット プラットフォーム Sun Solaris、Digital UNIX、NCR、RS/6000 デフォルトの文字セット iso_1 HP-UX OS/2、Novell NetWare 386 Macintosh roman8 cp850 mac -J パラメータに不正な文字セットまたは認識できない文字セットを 指定すると、次のエラー・メッセージが表示されます。 Unrecognized localization object. Using default value 'iso_1'. Starting copy... => warning. -L lastrow 入力ファイルからのコピー終了のロー番号です ( デフォルトでは、 最後のロー )。 120 第5章 ユーティリティ・コマンド・リファレンス -m maxerrors bcp_dce がコピーをアボートするまでに許容される致命的でないエ ラーの最大数です。bcp_dce は、挿入できない ( データ変換エラー または null 値を受け付けないカラムに null 値を挿入しようとした ために ) ローを除去し、拒否したローを 1 つのエラーとみなしま す。このパラメータを使用しない場合、bcp_dce はデフォルト値 10 を使用します。 -P password Adaptive Server のパスワードを指定します。-P password を指定し ない場合、bcp_dce はパスワードの入力を要求するプロンプトを表 示します。パスワードが NULL の場合は、-P フラグだけを残して ください。 注意 表 5-2 で示したユーティリティ・プログラムでは、-P パラメータ を使用してパスワードを入力できる場合があります。セキュリティを 考慮する必要がある場合は、このパラメータを使ってパスワードを指 定しないでください。他のユーザにパスワードを見られるおそれがあ ります。-P パラメータを使用せずに、通常のログインを行って、 Adaptive Server がパスワードの入力を要求するプロンプトを表示す るようにしてください。 -q datafile_charset bcp_dce を実行して、クライアントの文字セットと異なる文字セット を使用するファイル・システムに、またはこのファイル・システムか ら文字データをコピーできます。-q を -J とともに使用すると、変換 に必要な文字セット変換ファイル (.xlt ファイル ) が指定できます。 日本語環境では、-q フラグは半角カタカナを全角カタカナに変換し ます。-J フラグと一緒に引数 zenkaku を入力して、クライアントの 日本語文字セット (sjis または eucjis) を示してください。zenkaku.xlt ファイルは、端末から Adaptive Server への変換だけを行い、 Adaptive Server から端末への変換は行いません。 -q パラメータで指定した文字変換ファイルが存在しないか、その ファイル名の入力ミスがあると、次のエラー・メッセージが表示さ れます。 Error in attempting to determine the size of a pair of translation tables.:’stat’ utility failed. 121 bcp_dce 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットまたはクライアントの文字セットを ascii_7 に設定すると、7 ビット の ASCII 文字が、変換されずにクラ イアントとサーバの間で受け渡されます。その他の文字セットを使用 している場合は、変換エラーが発生します。文字セット変換の詳細に ついては、『システム管理ガイド』を参照してください。 -r row_terminator ロー・ターミネータを指定します。 警告 ! ネイティブ・フォーマットを使って bcp_dce を実行する場合は、 -t パラメータまたは -r パラメータを使用しないでください。予期しな い結果となったり、データが破損する可能性があります。 注意 コマンド・ラインから -t パラメータまたは -r パラメータでターミ ネータを指定する場合は、UNIX オペレーティング・システムに対し て特殊な意味を持っている文字はエスケープしなければなりません (「例」(104 ページ ) を参照 )。特殊文字の前にバックスラッシュを付 けるか、または特殊文字を引用符で囲んでください。bcp_dce がプロ ンプトを表示する場合 ( 対話型モード ) は、その必要はありません。 -R remote_server_principal リモート・サーバのプリンシパル名を指定します。デフォルトで は、サーバのプリンシパル名はサーバのネットワーク名 (-S パラ メータまたは DSQUERY 環境変数で指定 ) と一致します。サーバの プリンシパル名とネットワーク名が一致しない場合は、-R パラ メータを使用してください。 -S server 接続する Adaptive Server の名前を指定します。引数なしで -S を指 定した場合、bcp_dce は DSQUERY 環境変数によって指定された サーバを使用します。 -t field_terminator フィールド・ターミネータを指定します。 警告 ! ネイティブ・フォーマットを使って bcp_dce を実行する場合は、 -t パラメータまたは -r パラメータを使用しないでください。予期しな い結果となったり、データが破損する可能性があります。 122 第5章 ユーティリティ・コマンド・リファレンス -T text_or_image_size Adaptive Server が送信する text データまたは image データの最大 長をバイト単位で指定します。デフォルトは 32K です。text フィー ルドまたは image フィールドが -T の値またはデフォルトより大き い場合、bcp_dce はオーバフローしたデータを送りません。 -U username Adaptive Server ログイン名を指定します。username を指定しない 場合、bcp_dce は現在のユーザのオペレーティング・システム・ロ グイン名を使用します。 -z language サーバが日付フォーマットと bcp_dce のプロンプトおよびメッセー ジの表示に使用する代替言語の公式名です。-z フラグを指定しない と、bcp_dce はサーバのデフォルト言語を使用します。言語はイン ストール時に Adaptive Server に追加できます。インストール後で も、langinstall ユーティリティまたは sp_addlanguage ストアド・プ ロシージャを使用して言語を追加できます。 -z パラメータに不正な言語または認識できない言語を指定すると、 次のエラーメッセージが表示されます。 Unrecognized localization object. Using default value 'us_english'. Starting copy... => warning. 例 bcp_dce pubs2..publishers out pub_out -c -t , -r \\r この例では、publishers テーブルからデータをコピー・アウトします。 -c パラメータは文字フォーマット ( すべてのフィールドに char を使用 ) を指定します。-t field_terminator パラメータは、カンマで各フィールド を終了し、-r row_terminator パラメータは、改行キーで各行を終了しま す。bcp_dce_dce は、パスワードの入力を要求するプロンプトのみを表 示します。最後の "r" の前にある 1 つ目のバックスラッシュは 2 つ目の バックスラッシュをエスケープするため、1 つのバックスラッシュだけ が出力されます。 bcp_dce_dce pubs2..publishers out pub_out Password: Enter the file storage type of field pub_id [char]: Enter prefix length of field pub_id [0]: Enter length of field pub_id [4]: Enter field terminator [none]: Enter the file storage type of field pub_name [char]: Enter prefix length of field pub_name [1]: Enter length of field pub_name [40]: 123 bcp_dce Enter field terminator [none]: Enter the file storage type of field city [char]: Enter prefix length of field city [1]: Enter length of field city [20]: Enter field terminator [none]: Enter the file storage type of field state [char]: Enter prefix length of field state [1]: Enter length of field state [2]: Enter field terminator [none]: Do you want to save this format information in a file? [Y-n] y Host filename [bcp_dce.fmt]: pub_form Starting copy... 3 rows copied. Clock Time (ms.): total = 1 Avg = 0 (3000.00 rows per sec.) この例では、publishers テーブルから pub_out というファイルにデータ をコピーし、あとで Adaptive Server に再ロードする場合に使用しま す。[Return] キーを押すと、プロンプトで指定されたデフォルトが使 用されます。publishers テーブルにデータをコピーするときにも同じ プロンプトが表示されます。 bcp_dce pubs2..publishers in pub_out -f pub_form 保存された pub_form フォーマット・ファイルを使用して、Adaptive Server にこのデータのコピーを返します。 データ型の例を参照するには、プロンプト画面で「?」を入力してくだ さい。 Enter the file storage type of field ’pub_id’ [’char’]:? Invalid column type. Valid types are: <cr>: same type as Adaptive Server column. c : char T : text i : int s : smallint t : tinyint f : float m : money b : bit d : datetime x : binary I : image D : smalldatetime r : real 124 第5章 ユーティリティ・コマンド・リファレンス M : smallmoney n : numeric e : decimal 上に表示されたとおりに 1 文字を入力してください。 bcp_dce pubs2..publishers in vt200_data -J iso_1 -q vt200 -z french この例では、VT200 端末で使用している文字セットで作成したデー タ・ファイルを pubs2..publishers テーブルにコピーします。-q フラグ は、そのデータ・ファイルを変換します。-z フラグは、フランス語で bcp_dce メッセージを表示します。 bcp_dce pubs2..publishers in -a mac -J roman8 -q iso_1 この例では、Macintosh を使用して、iso_1 を使用している別のマシ ン上のファイル・システムとともに、roman8 を使用しているワーク ステーション上で bcp_dce を実行していることを示します。 bcp_dce pubs2..publishers out -T 40960 -A 4096 この例では、Adaptive Server が 4,096 バイトのパケット・サイズを使用 している 40K の text または image データを送信することを示します。 使用法 • bcp_dce は、IBM RS/6000 の UNIX プラットフォーム以外では使 用できません。 • bcp_dce の詳細については、 「第 2 章 bcp を使用した Adaptive Server とのデータの転送」を参照してください。 • 大きなバッチの場合に、パラメータの変更によって bcp_dce の動 作がどのように変わるかについては、 『パフォーマンス&チュー ニング・ガイド』を参照してください。 • 強制アクセス制御 (MAC) をサポートしている信頼性の高いオペ レーティイング・システムで実行する場合は、Adaptive Server と 同じ sensitivity ラベルでオペレーティング・システムにログイン してください。Adaptive Server の sensitivity ラベルがわからない 場合は、その Adaptive Server のシステム・セキュリティ担当者 に問い合わせてください。 • bcp_dce は、データベース・テーブルまたはビューとオペレー ティング・システム・ファイル間でデータを高速に転送する便利 な方法です。bcp_dce では、さまざまなフォーマットのファイル の読み込みや書き込みができます。bcp_dce は、コピー・インで はデータを既存のデータベース・テーブルに追加し、コピー・ア ウトではファイル内の古い内容を上書きします。 125 bcp_dce • コピーが完了すると、bcp_dce は、コピーしたデータのローの数 と、コピーできなかったローがあればその数、コピーの総所要時 間、1 つのローの平均コピー所要時間 ( ミリ秒 ) のほか、1 秒あた りのコピーされたローの数を表示します。 • 高速 bcp_dce は各バッチを 1 つの insert トランザクションの中で コピーします。Adaptive Server がバッチ内のローを拒否した場 合、insert トランザクション全体がロールバックされます。デ フォルトでは、高速 bcp_dce はすべてのローを 1 つのバッチでコ ピーします。デフォルトのバッチ・サイズは、-b パラメータで変 更できます。Adaptive Server は各バッチを 1 つの bcp_dce オペ レーションと考え、各バッチを個別のデータ・ページに書き込 み、insert が成功したかどうかに関係なく次のバッチに進みます。 注意 バッチ・サイズを 1 に設定すると、Adaptive Server はコ ピー・インする各ローに 1 つのデータ・ページを割り当てます。 このオプションは、高速 bcp_dce にのみ適用され、データ中の破 損したローを見つける場合にのみ有効です。 126 • データをテーブルにコピーする場合、bcp_dce はカラムに定義さ れたデフォルトとユーザ定義のデータ型を調べます。しかし、 bcp_dce は可能なかぎり迅速にデータをロードするためにルール を無視します。 • 異なる端末を使用するサイトにホスト・データ・ファイルを送る 場合は、ファイルを作成するときに使用した datafile_charset を通 知します。 • ファイルのコピー・イン、コピー・アウトに名前付きパイプを使 用することはできません。 • ネイティブ・フォーマットを使って bcp_dce を実行する場合は、 -t パラメータまたは -r パラメータを使用しないでください。予期 しない結果となったり、データが破損する可能性があります。 第5章 ユーティリティ・コマンド・リファレンス 高速 bcp_dce と低速 bcp_dce • bcp_dce プログラムは、データと関連のあるインデックスやトリ ガを持たないテーブルにデータをロードするために、最適化され ています。bcp_dce は、インデックスやトリガを使用せずに、ロ ギングを最小限にすることで、データをテーブルに最大限のス ピードでロードします。ページの割り付けはロギングしますが、 ローの挿入はロギングしません。 1 つ、または複数のインデックスかトリガを持つテーブルにデー タをコピーする場合は、低速の bcp_dce が自動的に使用され、 ローの挿入をロギングします。これには、create table 文の一意性 制約を使用して暗黙的に作成されたインデックスも含まれます。 しかし、bcp_dce は、テーブルに定義された他の整合性制約は適 用しません。 • 高速 bcp_dce を使用した場合、データ変更のログは取られないた め、dump database を使用してデータベースをバックアップして ください。高速バルク・コピーのあとでは、トランザクション・ ログにトランザクションが加えられていないため、dump transaction を使用できません。 bcp_dce の高速バージョンは、ロギングしないでデータを挿入す るため、システム管理者またはデータベース所有者は始めにシス テム・プロシージャの sp_dboption, "DB" を true に設定してくだ さい。このオプションが true に設定されていない場合、インデッ クスまたはトリガのないテーブルにデータをコピーしようとする と、Adaptive Server はエラー・メッセージを生成します。データ をファイルにコピー・アウトする場合、またはインデックスかト リガを持つテーブルにデータをコピー・インする場合は、このオ プションを設定する必要はありません。 デフォルトでは、新しく作成されたデータベースに対して select into/bulkcopy/pllsort オプションは false です。デフォルトを変更 するには、model データベースのこのオプションをオンにしてく ださい。 • 高速 bcp_dce は、dump database の実行中は遅くなります。 127 bcp_dce • 低速 bcp_dce の実行時は、ログが非常に大きくなります。バル ク・コピーが完了してから、dump database でデータベースの バックアップを取り、dump transaction でログをトランケートし てください。ログダンプを行うために、trunc log on chkpt やス レッショルド・プロシージャを使用することもあります。 注意 インデックスまたはトリガがあるテーブルにデータをコピーする 場合には、パフォーマンスが大幅に低下します。膨大な数のローをコ ピー・インする場合は、まず drop index ( または一意性制約として作 成されたインデックスには alter table) と drop trigger を使用してすべ てのインデックスとトリガを削除し、データベース・オプションの設 定、テーブルへのデータのコピー、インデックスとトリガの再生成を 行ってからデータベースをダンプすると、処理速度が上がることがあ ります。インデックスとトリガの構成に必要なディスク・スペースと して、クラスタード・インデックスにはデータに必要な空き領域の約 1.2 倍分を、データに必要な容量とは別に割り当てるようにしてくだ さい。 bcp_dce プロンプトへの応答 -n ( ネイティブ・フォーマット ) パラメータまたは -c ( 文字フォー マット ) パラメータを使用して、データをコピー・インまたはコ ピー・アウトする場合は、-P パラメータでパスワードを指定していな いと、パスワードの入力を要求するプロンプトが表示されます。-n パ ラメータと -c パラメータのどちらも指定していない場合、bcp_dce は、テーブルまたはビューの各フィールド ( カラム ) に情報を入力す るようにプロンプトを表示します。 • 各プロンプトでは、デフォルト値は角カッコで表示されます。 [Return] キーを押すと、この値を選択することができます。プロ ンプトには、次のものがあります。 • ファイルの記憶タイプ (char または有効な Adaptive Server データ型 ) • プレフィクスの長さ ( 後続のデータの長さをバイトで示す整数 ) • ファイルのデータの記憶領域の長さ • フィールド・ターミネータ ( 任意の文字列 ) ロー・ターミネータは、テーブルまたはファイルの最後のフィー ルドのフィールド・ターミネータです。 128 第5章 • ユーティリティ・コマンド・リファレンス 角カッコ内のデフォルト値は、該当するフィールドのデータ型と して適切な値を表しています。ファイルへコピー・アウトする場 合の最適な空き領域の使用方法は、次のとおりです。 • デフォルトのプロンプトを使用する • テーブル・データ型にすべてのデータをコピーする • 指定どおりにプレフィクスを使用する • ターミネータを使用しない • デフォルトの長さを使用する 表 5-3 に、bcp_dce のプロンプト、デフォルトのユーザの応答、 可能な応答を示します。 129 bcp_dce 表 5-7: bcp_dce のプロンプト、デフォルトとユーザ応答 プロンプト File Storage Type ( ファ イル記憶タ イプ ) デフォルト設定 次の 2 つを除くほとんどのフィールド にデータベース記憶タイプを使用。 Prefix Length ( プレフィ クス長 ) 0 char データ型 ( 記憶タイプではない ) および固定長のデータ型を指定して定 義されたフィールド varchar 用の char varbinary 用の binary 1 その他のデータ型 可能なユーザの 応答 人間が判読できる ファイル ( 暗黙の変 換がサポートされ る Adaptive Server のデータ型 ) の作成 または読み込みを 行う char。 プレフィクスが必 要でない場合は 0、 それ以外の場合は デフォルト。 2 char として保存された binary および varbinary Storage Length ( 記憶領域 の長さ ) Field or Row Terminator ( フィール ド・ターミ ネータまた はロー・ ターミネー タ) 4 text および image char および varchar では、定義された 長さを使用する。 char として保存した binary および varbinary では、定義された長さの 2 倍の長さを使用する。 これ以外のデータ型では、トラン ケーションまたはデータのオーバフ ローを回避するために必要な最大長を 使用する。 なし デフォルト値また はそれ以上の値 最大 30 文字 注意 すべてのオペレーティング・システムで同じネイティブ・ データ型を使用しているわけではないので、異なるオペレーティ ング・システムからデータをコピーする場合は ( たとえば、NT から UNIX サーバへのコピー )、注意してください。 • 130 プレフィクス長は、バイト単位で各データ値の長さを表す、1 バ イト、2 バイト、または 4 バイトの整数です。プレフィクス長は、 第5章 ユーティリティ・コマンド・リファレンス ホスト・ファイルのデータ値の直前に指定します。 • フィールド・ターミネータ文字列は、30 文字まで指定できます。 最も一般的なターミネータは、タブ ("\t" と入力し、最後のカラ ム以外のすべてのカラムに使用される )、および改行 ("\n" と入力 し、ローの最終フィールドに使用される ) です。これ以外に、 "\0" (null ターミネータ )、"\" ( バックスラッシュ )、"\r" ( リター ン ) があります。bcp_dce はつねに、最初に現れたターミネータ として指定されたものをターミネータとして判断するため、ター ミネータを選択する場合は、使用している文字データでそのパ ターンが使用されていないことを確認してください。 ターミネータまたはプレフィクスは、転送するデータの実際の長 さに影響します。 • ファイルにコピー・アウトするエントリの長さが記憶領域の長 さより短い場合 (char、nchar、binary データ以外 )、次のフィー ルドに対するターミネータまたはプレフィクスがこのすぐあと に続き、記憶領域の長さ分の埋め込みは行われません。 • コピー・インする場合、"Length" プロンプトで示されるバイ ト数に達するか、ターミネータを検出するまで、bcp_dce は データをコピーします。データが指定した長さを超える場合、 bcp_dce はターミネータを検出するまでデータをフラッシュ します。ターミネータがない場合、テーブルの記憶領域の長 さが使用されます。 • データベース・データ型ではなく、char (char、nchar、および binary 以外 ) としてフィールドが保管されている場合は、デフォ ルト長とプレフィクス、またはターミネータに使用する記憶領域 が少なくて済みます。bcp_dce は、ターミネータまたはプレフィ クスを使用して、記憶領域の有効な使用方法を決定します。 bcp_dce は、デフォルトとして各フィールドで必要とされる記憶 領域の最大容量を推奨します。char データまたは varchar データ の場合は、bcp_dce はどの長さも使用できます。 • char、nchar、または binary としてデータベースで定義された フィールドと null 値を使用できないフィールドには、つねにデー タベースで定義されたいっぱいの長さとなるようにスペース ( バ イナリには null バイト ) が埋め込まれます。timestamp データは、 binary(8) として扱われます。 varchar フィールドおよび varbinary フィールドのデータが、コ ピー・アウト用に指定した長さより長い場合は、bcp_dce がファ イルのデータを指定された長さに暗黙的にトランケートします。 131 bcp_dce • 表 5-4 と表 5-5 に、ファイルに入っている情報のプレフィクス長、 ターミネータ、およびフィールド長についての応答を示します。 "P" は保管されたテーブルのプレフィクス、"T" はターミネータ、 2 つのダッシュ (--) は追加領域をそれぞれ表します。省略記号 (...) は、各フィールドでパターンが繰り返されることを表します。 フィールドの長さはカラムごとに 8 です。"string" は、それぞれ 6 文字のフィールドを表します。 表 5-8: Adaptive Server char データ ターミネータなし ターミネータ プレフィクス長 = 0 string--string--... プレフィクス長 = 1、 、2、 、 または 4 Pstring--Pstring--... string--Tstring--T... Pstring--TPstring--T... 表 5-9: char 記憶タイプに変換された他のデータ型 ターミネータなし ターミネータ プレフィクス長 = 0 string--string--... stringTstringT... プレフィクス長 = 1、 、2、 、 または 4 PstringPstring... PstringTPstringT... • ファイル記憶領域の長さは、カラムに転送される最大データ量に ターミネータとプレフィクスを加えたものです。 • bcp_dce は、null 値を含むデータ・カラムを可変長と認識するの で、プレフィクス長またはターミネータ長のどちらかを使用し て、各ローのデータの長さを記述してください。 データ型と記憶タイプ 132 • bcp_dce は、そのデータベースのデータ型か、または暗黙の変換 がサポートされているデータ型として、ファイルにデータをコ ピー・アウトできます。bcp_dce は、基本のデータ型か、または 暗黙の変換がサポートされているデータ型として、ユーザ定義 データ型をコピーします。データ型の変換に関する詳細について は、『Open Client DB-Library/C リファレンス・マニュアル』の dbconvert の項と『Adaptive Server リファレンス・マニュアル』 の「Datatype Conversion Functions」を参照してください。 • カラムのファイル記憶タイプおよび長さは、データベース・テー ブルのカラムのタイプおよび長さと同じである必要はありません ( コピー・インされたタイプとフォーマットがデータベース・ テーブルの構造と矛盾する場合は、コピーは失敗します )。 第5章 ユーティリティ・コマンド・リファレンス • ネイティブ・フォーマットでホスト・ファイルに書き込まれたデー タは、その精度をすべて保持します。datetime 値および float 値は、 文字フォーマットに変換される際も精度を保持します。Adaptive Server は、通貨単位の 1 万分の 1 の精度で money 値を保管します。 しかし、money 値が文字フォーマットに変換される場合は、文字 フォーマット値は、近似値 2 桁しか記録されません。 • ファイルからデータベース・テーブルに文字フォーマットでデー タをコピーする前に、『Adaptive Server リファレンス・マニュア ル』の「データ型」の項を参照して、データ型の入力規則を チェックしてください。bcp_dce を使用してデータベースにコ ピーする文字データは、この規則に従っていなければなりませ ん。特に、(yy)yymmdd のような区切り文字のない日付形式の場 合は、年が最初に指定されていないと、オーバフロー・エラーに なる可能性があります。 参照 システム・ プロシージャ sp_audit, sp_dboption, sp_displayaudit システム・ テーブル sysaudits_01 – sysaudits_08 133 buildmaster buildmaster 説明 マスタ・デバイスを構築して、そこに master、model、tempdb の各 データベースを作成する。 構文 buildmaster [-d disk] [-c cno] [-s size] [-m] [-r] [-q] [-x] または buildmaster -v パラメータ -d disk マスタ・デバイスがあるロー・ディスク・パーティション、または オペレーティング・システム・ファイルの物理名です。 -c cno マスタ・デバイスのコントローラ番号です。cno と disk の 2 つのパ ラメータを使ってマスタ・デバイスを指定します。cno のデフォル ト値は、0 です。Sybase 製品の保守契約を結んでいるサポート・セ ンタから指示がないかぎり、この値を変更しないでください。 -s size 2K ブロック単位で表したマスタ・デバイスのサイズです。1MB に は 512 の 2K ブロックがあります。たとえば、size を "15360" に指定 すると、30MB のマスタ・デバイスが作成されます。buildmaster で は、-m パラメータを使用しないかぎり、このパラメータに指定し た値が、そのマスタ・デバイスに使用できる空き領域を超えていな いかどうか確認します。マスタ・デバイスのサイズの詳細について は、使用しているプラットフォームの『インストール・ガイド』や 『設定ガイド』を参照してください。 -m マスタ・デバイスの初期化を行わずに、master データベースだけを 変更します。master データベースが破壊されていて、マスタ・デバ イス上の他のデータベースに損傷がない場合は、このパラメータを 使用してください。 -r mastermirror マスタ・デバイスのミラーリングを開始します。 134 第5章 ユーティリティ・コマンド・リファレンス -q master データベースと model データベース内の割り当てられていな いページをクリアしません。このパラメータは、-x パラメータと一 緒に使用すると無効になります。 -x マスタ・デバイスの変更や初期化を行わずに、model データベース だけを変更します。model データベースが破壊されていて、バック アップから正常にロードできない場合には、このパラメータを使用 してください。このパラメータを使用して model を再度初期化した あとは、バックアップから model をリストアする必要があります。 -v buildmaster のバージョン番号と版権メッセージを表示して、終了 します。 例 buildmaster -d /dev/rsd1f -s8704 この例では、ロー・デバイス /dev/rsd1f をサイズが 17MB のマスタ・ デバイスとして初期化し、そのデバイス上でシステム・データベース の master、model、および tempdb を作成します。 使用法 • buildmaster プログラムによって、指定のデータベース・デバイス が Adaptive Server マスタ・デバイスとして初期化され、そのデ バイス上に master データベースと model データベースが構築され ます。 • buildmaster は Adaptive Server が停止しているときにだけ使用し てください。 • Adaptive Server インストール・プログラムは、buildmaster を実 行し、プロンプトへの応答で指定されたデータベース・デバイス 上に、初期 master データベースを構築します。 • パラメータを付けずに buildmaster を実行した場合は、次にリス トした情報の指定を求められます。 master disk name? master disk controller number? master disk size? configuration only? (y or n) databases only? (y or n) 各プロンプトに応答を入力してください。 "configuration only?" には、"n" と応答し、次のコマンドによって 設定をリストアします。 sp_configure "configuration file", 0, restore, file_name 135 buildmaster "databases only?" プロンプトに "yes" と応答すると、-m フラグを 付けて buildmaster を実行した場合と同じことになります。 • • システム・データベースのバックアップとリカバリについては、 『システム管理ガイド』を参照してください。 buildmaster -m を実行すると、デフォルト・アカウント "sa" のパ スワードが null に変更され、このアカウントはロック解除されま す。master データベースのバックアップをロードすると、"sa" の パスワードとロックのステータスがダンプが行われた時点までリ ストアされます。 参照 ユーティリティ 136 startserver 第5章 ユーティリティ・コマンド・リファレンス charset 説明 文字セットとソート順ファイルをロードします。 構文 charset [-P password] [-S server] [-I interface] sort_order | charset または charset -v パラメータ -Ppassword パスワードを指定します。-P を指定しない場合、charset はパス ワードの入力を要求するプロンプトを表示します。 -Sserver 文字セットおよびソート順を変更するサーバの名前を指定します。 -Iinterface サーバが使用するネットワーク・インタフェースを指定します。 sort_order Adaptive Server で使用するソート順ファイルの名前を指定します。 charset Adaptive Server で使用する文字セットを指定します。 -v charset のバージョン番号と版権メッセージを表示します。 charset を使用するときには、SYBASE 環境変数を現リリースのリ リース・ディレクトリに設定しておく必要があります。 使用法 • パーミッション charset を使用するためには、システム管理者でなければなりません。 参照 コマンド ユーティリティ set langinstall 137 dataserver dataserver 説明 実行形式の Adaptive Server プログラムです。 構文 dataserver -ddevicename [-cconfigurationfile] [-eerrorlogfile] [-m] [-rmastermirror] [-Msharedmem_directory] [-iinterfaces_file_directory] [-sservername] [-psso_login_name] または dataserver -v パラメータ -d devicename master データベースのデバイスのフル・パス名です。master デー タベースのデバイスは、Adaptive Server を起動するユーザが書き 込み可能でなければなりません。デフォルトの master データベー ス・デバイス名は、d_master です。 -cconfigurationfile Adaptive Server 設定ファイルのフル・パス名を指定します。指定 した設定ファイルの設定値を使用して Adaptive Server を起動する ときに、このパラメータを使用してください。詳細については、 『システム管理ガイド』を参照してください。 -eerrorlogfile Adaptive Server のシステム・レベルのエラー・メッセージに使用 するエラー・ログ・ファイルのフル・パス名です。 -m Adaptive Server をシングルユーザ・モードで起動します。 -rmastermirror マスタ・デバイスのミラーリングを開始します。マスタ・デバイス が破損している場合には、このパラメータを使用して Adaptive Server を起動します。 -Msharedmem_directory 共有メモリのファイルを、デフォルトのロケーションである $SYBASE ではなく、指定したディレクトリ内に置きます。 sharedmem_directory が、"/" で始まる場合、そのディレクトリ名は 絶対パスとして解釈されます。それ以外の場合、ディレクトリ名は $SYBASE の相対パスとして解釈されます。 138 第5章 ユーティリティ・コマンド・リファレンス -iinterfaces_file_directory Adaptive Server に接続するときに検索する interfaces ファイルがあ るディレクトリを指定します。-I を省略した場合、dataserver は、 SYBASE の環境変数に指定されたディレクトリにある interfaces と いう名前のファイルを探します。 -sservername 起動する Adaptive Server の名前を指定します。-s を指定しない場 合、SYBASE という名前のサーバが起動します。 -psso_login_name アカウントに対して新しいパスワードを生成するために、 Adaptive Server を起動するときのシステム・セキュリティ担当者 のログイン名を指定します。Adaptive Server はランダムにパス ワードを生成し、それを表示して暗号化してから、master..syslogins 内に、そのアカウントの新しいパスワードとして保存します。 -v dataserver のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 • dataserver プログラムを直接起動するのではなく、startserver コ マンドを使用して、Adaptive Server を起動してください。デフォ ルト値のいずれかを変更する場合は、Sybase インストール・ディ レクトリにある RUN_servername ファイルを編集してください。 詳細については、startserver のリファレンス・ページを参照して ください。 • • dataserver プログラムとともに Adaptive Server を起動した場合、 Adaptive Server の実行環境は、次の値によって決定されます。 • -c configurationfile に指定された設定ファイル • デフォルトの設定ファイルである servername.cfg (-c パラメー タを指定しなかった場合 ) • デフォルト値 (-c configurationfile と servername.cfg のどちらも 指定しない場合 ) これらの設定パラメータの詳細については、 『システム管理ガイ ド』の「第 17 章 設定パラメータ」を参照してください。 139 dataserver • • Adaptive Server のパスワードは暗号化されるため、パスワードを 忘れた場合には回復できません。システム・セキュリティ担当者 全員が自分達のパスワードを忘れてしまった場合は、-p パラメー タを使ってシステム・セキュリティ担当者のアカウント用に新し いパスワードを生成できます。-p を指定して Adaptive Server を 起動し、すぐに新しい任意のパスワードで Adaptive Server にロ グインしてから、sp_password を実行してパスワードをより安全 なものに設定しなおしてください。 Adaptive Server インストール・プログラムを実行したあと、 dataserver 実行プログラムにファイル・パーミッションを設定し て、実行できるユーザを制限してください。 • -s パラメータで Adaptive Server 名を指定せず、DSLISTEN 環境 変数も設定していない場合には、dataserver は、デフォルトの Adaptive Server 名である SYBASE を使用します。DSLISTEN 環 境変数の値はこのデフォルト値を上書きします。また、-s パラ メータを指定すると、デフォルト値と DSLISTEN 環境変数の両方 を上書きします。 参照 コマンド 140 disk mirror, disk remirror 第5章 ユーティリティ・コマンド・リファレンス defncopy 説明 特定のビュー、ルール、デフォルト、トリガ、プロシージャの定義 を、データベースからオペレーティング・システム・ファイルに、ま たはオペレーティング・システム・ファイルからデータベースにコ ピーします。 注意 Report Workbench で作成したテーブル定義またはレポートは、 defncopy ユーティリティでコピーすることはできません。 構文 defncopy [-X] [-a display_charset] [-I interfaces_file] [-J [client_charset]] [-P password] [-R remote_server_principal] [-S [server]] [-U username [-z language] {in filename dbname | out filename dbname [owner.]objectname [[owner.]objectname...] } または defncopy -v パラメータ -X サーバへの接続において、クライアント側のパスワードを暗号化し てログインを開始します。defncopy ( クライアント ) は、パラメー タを暗号化するようサーバに伝えます。サーバは、defncopy がパ スワードを暗号化するために使う暗号化キーを返送し、パスワード を受け取ると、そのキーを使用してそのパスワードを確認します。 defncopy がクラッシュすると、パスワードを含むコア・ファイル が作成されます。暗号化オプションを使用していない場合、パス ワードは、コア・ファイルにプレーン・テキストで表示されます。 暗号化オプションを使用した場合、パスワードは表示されません。 141 defncopy -a display_charset defncopy を実行するマシンの文字セットとは異なる文字セットを 使用する端末から、defncopy を実行できます。-a を -J とともに使 用すると、変換に必要な文字セット変換ファイル (.xlt ファイル ) が 指定できます。クライアントの文字セットがデフォルトの文字セッ トと同じ場合にかぎり、-J を指定せずに -a を指定してください。 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットとクライアントの文字セットのどちら かが ascii_7 に設定されていれば、すべての 7 ビット ASCII 文字が変 換されることなくクライアントとサーバの間で受け渡されます。その 他の文字セットを使用している場合は、変換エラーが発生します。文 字セット変換の詳細については、『システム管理ガイド』を参照して ください。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、defncopy は SYBASE 環境変数によって指定されたディレクトリにある interfaces という名前のファイルを探します。 -J client_charset クライアントで使用する文字セットを指定します。フィルタによっ て、client_charset と Adaptive Server 文字セットとの間で入力が変 換されます。 --J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 -J に引数を指定しないと、文字セット変換は NULL に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。デフォルトの文字セットは、クライアントが使用する 文字セットと同じであるとはかぎりません。文字セットと関連する フラグの詳細については、『システム管理ガイド』を参照してくだ さい。 -P password パスワードを指定します。-P を指定しない場合、defncopy はパス ワードの入力を要求するプロンプトを表示します。 142 第5章 ユーティリティ・コマンド・リファレンス -R remote_server_principal リモート・サーバのプリンシパル名を指定します。デフォルトで は、サーバのプリンシパル名はサーバのネットワーク名 (-S パラ メータまたは DSQUERY 環境変数で指定 ) と一致します。サーバの プリンシパル名とネットワーク名が一致しない場合は、-R パラ メータを使用してください。 -S server 接続する Adaptive Server の名前を指定します。引数なしで -S を指 定した場合、defncopy は SYBASE という名前のサーバを探します。 -S を指定しない場合、defncopy は DSQUERY 環境変数によって指 定されたサーバを使用します。 -U username ログイン名を指定します。ログイン名では、大文字と小文字を区別 します。username を指定しない場合、defncopy は現在のユーザの オペレーティング・システム・ログイン名を使用します。 -z language サーバが defncopy のプロンプトとメッセージの表示に使用する代 替言語の公式名です。-z フラグを指定しないと、defncopy はサーバ のデフォルト言語を使用します。言語はインストール時に Adaptive Server に追加できます。インストール後でも、langinstall ユーティリティまたは sp_addlanguage ストアド・プロシージャを 使用して言語を追加できます。 in | out 定義コピーの方向 ( 宛先 ) を指定します。 filename 定義コピーの送信元または送信先であるオペレーティング・システ ム・ファイルの名前を指定します。コピー・アウトを行うと、既存 のファイルはすべて上書きされます。 dbname 定義コピーの送信元または送信先であるデータベースの名前を指定 します。 owner ユーザかデータベース所有者がコピーするテーブルを所有している 場合はオプションです。所有者を指定しない場合、defncopy は ユーザが所有している名前のテーブルを最初に検索します。次に、 データベース所有者が所有しているテーブルを検索します。それ以 外のユーザがテーブルを所有している場合は、所有者の名前を指定 しなければなりません。指定しないと、defncopy は失敗します。 143 defncopy objectname defncopy でコピー・アウトするデータベース・オブジェクトの名 前を指定します。定義をコピー・インするときは objectname を使用 しないでください。 -v defncopy のバージョン番号と版権メッセージを表示して、オペ レーティング・システムに戻ります。 例 defncopy -Usa -P -SMERCURY in new_proc stagedb 定義を new_proc ファイルから MERCURY サーバ上のデータベース stagedb へコピーします。MERCURY への接続は、ユーザ名 "sa"、パ スワード "NULL" で確立されます。 defncopy -S -z french out dc.out employees sp_calccomp sp_vacation "sp_calccomp" オブジェクトと "sp_vacation" オブジェクトの定義を SYBASE サーバ上の "employees" データベースから "dc.out" ファイルへ コピーします。メッセージとプロンプトが 塔 t ランス語 î で表示され ます。ユーザはパスワードの入力を求められます。 使用法 144 • defncopy プログラムは、オペレーティング・システムから直接呼 び出してください。defncopy は、ビュー、ルール、デフォルト、 トリガ、プロシージャの定義 (create 文 ) を、データベースからオ ペレーティング・システム・ファイルへ非対話型方式でコピー・ アウトします。または、指定したファイルからすべての定義をコ ピー・インします。 • 定義をコピー・アウトするには、sysobjects テーブルおよび syscomments テーブルに対する select パーミッションが必要です。 オブジェクト自体のパーミッションは必要ありません。 第5章 ユーティリティ・コマンド・リファレンス システム・セキュリティ担当者が、システム・プロシージャ sp_configure を使用して allow select on syscomments.text column パラメータをリセットした場合は、ユーザは syscomments テーブ ルの text カラムに select パーミッションを持たない場合がありま す。このリセットにより、select パーミッションはオブジェクト の所有者とシステム管理者に制限されます。この制限は、 Adaptive Server を「評価済み設定」で実行するために必要です。 これについては、使用しているプラットフォーム用の『インス トール・ガイド』および『設定ガイド』を参照してください。こ の場合、オブジェクトの所有者またはシステム管理者は、 defncopy で定義をコピー・アウトする必要があります。 注意 テキストが暗号化されている場合、必要なパーミッションを すべて持っていても、表示されないことがあります。詳細につい ては、『Transact-SQL ユーザーズ・ガイド』の「ソース・テキス トの確認と暗号化」を参照してください。 • コピー・インするオブジェクトのタイプの適切な create パーミッ ションが必要です。コピー・インされたオブジェクトは、コピー を実行した人が所有者になります。ユーザの代わりに定義をコ ピー・インするシステム管理者は、そのユーザとしてログインし て、再構築したデータベース・オブジェクトへの適切なアクセス 権をそのユーザに提供してください。 • in filename または out filename とデータベース名を指定する必要が あります。不明確な名前は避けるようにしてください。コピー・ アウトする場合は、オブジェクト名とその所有者の両方を表す ファイル名を使用してください。 • defncopy は、コピー・アウトした各定義の終わりに次のようなコ メントを付けます。 /* ### DEFNCOPY: END OF DEFINITION */ テキストとして作成する定義は、defncopy が正しくコピーを行う ことができるように、このコメントで終了していなければなりま せん。 • シェルにとって特別な意味のある文字が defncopy に含まれてい る場合は、その値を引用符で囲んでください。 警告 ! 100 文字を超える長いコメントが create 文の前にあると、 defncopy が失敗することがあります。 145 defncopy 参照 システム・ プロシージャ 146 sp_checkreswords, sp_procqmode, sp_remap 第5章 ユーティリティ・コマンド・リファレンス defncopy_dce 説明 特定のビュー、ルール、デフォルト、トリガ、プロシージャの定義 を、データベースからオペレーティング・システム・ファイルに、ま たはオペレーティング・システム・ファイルからデータベースにコ ピーします。 注意 Report Workbench で作成したテーブル定義またはレポートは、 defncopy_dce ユーティリティでコピーすることはできません。 構文 defncopy_dce [-X] [-a display_charset] [-I interfaces_file] [-J [client_charset]] [-K keytab_file] [-P password] [-R remote_server_principal] [-S [server]] [-U username] [-V [security_options]] [-z language] [-Z security_mechanism] {in filename dbname | out filename dbname [owner.]objectname [[owner.]objectname...] } または defncopy_dce [-v] パラメータ -a display_charset defncopy_dce を実行しているマシンの文字セットとは異なる文字 セットを使用する端末から、defncopy_dce を実行できます。-a を -J とともに使用すると、変換に必要な文字セット変換ファイル (.xlt ファイル ) が指定できます。クライアントの文字セットがデフォル トの文字セットと同じ場合にかぎり、-J を指定せずに -a を指定し てください。 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットとクライアントの文字セットのどちら かが ascii_7 に設定されていれば、すべての 7 ビット ASCII 文字が変 換されることなくクライアントとサーバの間で受け渡されます。その 他の文字セットを使用している場合は、変換エラーが発生します。文 字セット変換の詳細については、『システム管理ガイド』を参照して ください。 147 defncopy_dce -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、 defncopy_dce は SYBASE 環境変数によって指定されたディレクト リにある interfaces という名前のファイルを探します。 -J client_charset クライアントで使用する文字セットを指定します。フィルタによっ て、client_charset と Adaptive Server 文字セットとの間で入力が変 換されます。 -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 -J に引数を指定しないと、文字セット変換は NULL に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。デフォルトの文字セットは、クライアントが使用する 文字セットと同じであるとはかぎりません。文字セットと関連する フラグの詳細については、『システム管理ガイド』を参照してくだ さい。 -K keytab_file DCE セキュリティのみと一緒に使用できます。このパラメータは、 -U パラメータで指定されたユーザのセキュリティ・キーが保存さ れている DCE の keytab ファイルを指定します。keytab ファイル は、DCE の dcecp ユーティリティで作成できます。詳細については DCE のマニュアルを参照してください。 -K パラメータを指定しない場合、defncopy_dce のユーザは -U パラ メータで指定したユーザ名と同じ名前で DCE にログインしなけれ ばなりません。 -P password パスワードを指定します。-P を指定しない場合、defncopy_dce は パスワードの入力を要求するプロンプトを表示します。 -R remote_server_principal リモート・サーバのプリンシパル名を指定します。デフォルトで は、サーバのプリンシパル名はサーバのネットワーク名 (-S パラ メータまたは DSQUERY 環境変数で指定 ) と一致します。サーバの プリンシパル名とネットワーク名が一致しない場合は、-R パラ メータを使用してください。 148 第5章 ユーティリティ・コマンド・リファレンス -S server 接続する Adaptive Server の名前を指定します。引数なしで -S を指 定した場合、defncopy_dce は SYBASE という名前のサーバを探し ます。-S を指定しない場合、defncopy_dce は DSQUERY 環境変数 によって指定されたサーバを使用します。 -U username ログイン名を指定します。ログイン名では、大文字と小文字を区別 します。username を指定しない場合、defncopy_dce は現在のユー ザのオペレーティング・システム・ログイン名を使用します。 -V security_options ネットワーク・ベースのユーザ認証を指定します。-V パラメータを 指定した場合、ユーザはネットワークのセキュリティ・システムに ログインしてからでなければ defncopy_dce を実行できません。-V パラメータを指定する場合は、-U を使用してネットワーク username を指定してください。defncopy_dce は、-P パラメータで 指定したパスワードをすべて無視します。 その他のセキュリティ・サービスを有効にするには、次に示す security_options キー文字を使用します。 表 5-10: defncopy_dce のセキュリティ・オプション キー文字 c i m セキュリティ・サービス データ機密保持サービスを有効にする。 データ整合性サービスを有効にする。 接続を確立するための相互認証を有効にする。 r データ・オリジン・スタンピング・サービスを有効にする。 データのリプレイの検出を有効にする。 q 順序不整合の検出を有効にする。 o -X サーバへの接続において、クライアント側のパスワードを暗号化し てログインを開始します。defncopy_dce ( クライアント ) は、パス ワードを暗号化するようサーバに伝えます。サーバは、 defncopy_dce がパスワードを暗号化するために使う暗号化キーを 返送し、パスワードを受け取ると、そのキーを使用してそのパス ワードを確認します。 defncopy_dce がクラッシュすると、パスワードを含むコア・ファイ ルが作成されます。暗号化オプションを使用していない場合、パス ワードは、コア・ファイルにプレーン・テキストで表示されます。暗 号化オプションを使用した場合、パスワードは表示されません。 149 defncopy_dce -Z security_mechanism 接続で使用するセキュリティ・メカニズムの名前を指定します。 セキュリティ・メカニズム名は $SYBASE/install/libctl.cfg 設定ファ イルに定義されています。セキュリティ・メカニズム名を指定しな い場合は、デフォルトのセキュリティ・メカニズムが使用されま す。セキュリティ・メカニズム名の詳細については、『Open Client/Server 設定ガイド UNIX 版』の libctl.cfg ファイルの説明を参 照してください。 -z language サーバが defncopy_dce のプロンプトとメッセージの表示に使用す る代替言語の公式名です。-z フラグを指定しないと、defncopy_dce はサーバのデフォルト言語を使用します。言語はインストール時に Adaptive Server に追加できます。インストール後でも、langinstall ユーティリティまたは sp_addlanguage ストアド・プロシージャを 使用して言語を追加できます。 in | out 定義コピーの方向 ( 宛先 ) を指定します。 filename 定義コピーの送信元または送信先であるオペレーティング・システ ム・ファイルの名前を指定します。コピー・アウトを行うと、既存 のファイルはすべて上書きされます。 dbname 定義コピーの送信元または送信先であるデータベースの名前を指定 します。 objectname defncopy_dce でコピー・アウトするデータベース・オブジェクト の名前を指定します。定義をコピー・インするときは objectname を 使用しないでください。 -v defncopy_dce のバージョン番号と版権メッセージを表示して、オ ペレーティング・システムに戻ります。 例 defncopy_dce -Usa -P -SMERCURY in new_proc stagedb 定義を new_proc ファイルから MERCURY サーバ上のデータベース stagedb へコピーします。MERCURY への接続は、ユーザ名 "sa"、パ スワード "NULL" で確立されます。 defncopy_dce -S -z french out dc.out employees sp_calccomp sp_vacation 150 第5章 ユーティリティ・コマンド・リファレンス "sp_calccomp" オブジェクトと "sp_vacation" オブジェクトの定義を SYBASE サーバ上の "employees" データベースから "dc.out" ファイルへ コピーします。メッセージとプロンプトが " フランス語 " で表示され、 ユーザにパスワードの入力を求めます。 使用法 • defncopy_dce は、IBM RS/6000 の UNIX プラットフォーム以外で は使用できません。 • defncopy_dce プログラムは、オペレーティング・システムから直 接呼び出してください。defncopy_dce は、ビュー、ルール、デ フォルト、トリガ、プロシージャの定義 (create 文 ) を、データ ベースからオペレーティング・システム・ファイルへ非対話型方 式でコピー・アウトします。または、指定したファイルからすべ ての定義をコピー・インします。 • 定義をコピー・アウトするには、sysobjects テーブルおよび syscomments テーブルに対する select パーミッションが必要です。 オブジェクト自体のパーミッションは必要ありません。 • システム・セキュリティ担当者が、システム・プロシージャ sp_configure を使用して allow select on syscomments.text column パラメータをリセットした場合は、ユーザは syscomments テーブ ルの text カラムに select パーミッションを持たない場合がありま す。このリセットにより、select パーミッションはオブジェクト の所有者とシステム管理者に制限されます。この制限は、 Adaptive Server を「評価済み設定」で実行するために必要です。 これについては、使用しているプラットフォーム用の『インス トール・ガイド』および『設定ガイド』を参照してください。こ の場合、オブジェクトの所有者またはシステム管理者は、 defncopy_dce で定義をコピー・アウトする必要があります。コ ピー・インするオブジェクトのタイプの適切な create パーミッ ションが必要です。コピー・インされたオブジェクトは、コピー を実行した人が所有者になります。ユーザの代わりに定義をコ ピー・インするシステム管理者は、そのユーザとしてログインし て、再構築したデータベース・オブジェクトへの適切なアクセス 権をそのユーザに提供してください。 • in filename または out filename とデータベース名を指定する必要が あります。不明確な名前は避けるようにしてください。コピー・ アウトする場合は、オブジェクト名とその所有者の両方を表す ファイル名を使用してください。 • defncopy_dce は、コピー・アウトした各定義の終わりに次のよう なコメントを付けます。 /* ### defncopy_dce: END OF DEFINITION */ 151 defncopy_dce テキストとして作成する定義は、defncopy_dce が正しくコピーを 行うことができるように、このコメントで終了していなければな りません。 • シェルにとって特別な意味のある文字が defncopy_dce に含まれ ている場合は、その値を引用符で囲んでください。 警告 ! 100 文字を超える長いコメントが create 文の前にあると、 defncopy_dce が失敗することがあります。 参照 システム・ プロシージャ 152 sp_checkreswords, sp_procqmode, sp_remap 第5章 ユーティリティ・コマンド・リファレンス dscp 説明 interfaces ファイルのサーバ・エントリをコマンド・ラインから表示、 編集できます。 構文 dscp [-p] または dscp -v dscp を終了するには: quit または exit パラメータ -p コマンドライン・プロンプトを抑制します。 -v dscp のバージョン番号と版権メッセージを表示して、オペレー ティング・システムに戻ります。 例 dscp -p 編集用にデフォルトの interfaces ファイルをオープンして、コマン ド・ライン・プロンプトを抑制します。 使用法 • dscp ユーティリティ・プログラムはテキスト・ベースのユーティ リティです。 • dscp ユーティリティ・プログラムの詳細については、 「dscp の使 用」(73 ページ ) を参照してください。 参照 ユーティリティ dsedit 153 dscp_dce dscp_dce 説明 コマンド・ライン・モードで DCE ディレクトリ・サービス・ファイ ルのサーバ・エントリを表示、編集できます。 構文 dscp_dce [-p] [quit | exit] または dscp_dce [-v] パラメータ -p コマンド・ライン・プロンプトを抑制します。 quit, exit 指定された interfaces ファイルをクローズして、セッションを終了 します。 -v dscp_dce のバージョン番号と版権メッセージを表示して、オペ レーティング・システムに戻ります。 使用法 • dscp_dce は、IBM RS/6000 の UNIX プラットフォーム以外では 使用できません。 • dscp_dce を実行するには、DCE アカウントが必要です。 • dscp_dce ユーティリティ・プログラムの詳細については、 「dscp の使用」(73 ページ ) を参照してください。 参照 ユーティリティ 154 dsedit_dce 第5章 ユーティリティ・コマンド・リファレンス dsedit 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・インタフェース ) を使用して、interfaces ファイルのサーバ・エントリをコマンド・ラ イン・モードで表示したり、編集したりできます。 構文 dsedit または dsedit -v パラメータ -v dsedit のバージョン番号と版権メッセージを表示します。 使用法 • SYBASE 環境変数を Sybase Adaptive Server の現在のバージョン のロケーションに設定してから、dsedit を使用してください。 • バージョン番号を表示するために -v パラメータしか使用しない場 合以外は、DISPLAY 環境変数を設定してから dsedit を呼び出し てください。 • dsedit ユーティリティ・プログラムの詳細については、 「dsedit の 使用」(63 ページ ) を参照してください。 参照 ユーティリティ dscp 155 dsedit_dce dsedit_dce 説明 DCE ディレクトリ・サービス・ファイルのネットワーク接続情報を 作成、変更します。 構文 dsedit_dce または dsedit_dce [-v] パラメータ -v dsedit_dce のバージョン番号と版権メッセージを表示します。 使用法 • dsedit_dce は、IBM RS/6000 の UNIX プラットフォーム以外では 使用できません。 • dsedit_dce は DCE ディレクトリ・サービス・ファイルのネット ワーク接続情報を作成、変更します。 • SYBASE 環境変数を Adaptive Server の現在のバージョンのロ ケーションに設定してから、dsedit_dce を使用してください。 • オプションの -v パラメータを指定しない場合は、DISPLAY 環境 変数を必ず設定してください。 • dsedit_dce を使用する場合は、DCE にログインしてください。 • dsedit_dce ユーティリティ・プログラムの詳細については、 「dsedit の使用」(63 ページ ) を参照してください。 参照 ユーティリティ 156 dscp_dce 第5章 ユーティリティ・コマンド・リファレンス extractjava 説明 保持された JAR とそれに含まれるクラスを Adaptive Server からクラ イアント・ファイルにコピーします。 データベースで Java を使用可能にした場合に、このユーティリティ をどのように使用するかについては、 『Adaptive Server Enterprise に おける Java』を参照してください。 構文 extractjava -j jar_name -f file_name [ -S server ] [ -U username ] [ -P password ] [ -D database ] [ -I interfaces_file ] [ -a display_charset ] [ -J client_charset ] [ -z language ] [ -t timeout] [-v] パラメータ -j jar_name 転送元データベースの保持された JAR に割り当てられた名前を指 定します。 -f file_name 転送先のクライアント・ファイルの名前を指定します。 -S server サーバの名前を指定します。 -U user_name Adaptive Server ログイン名を指定します。-U フラグとパラメータ を省略するか、-U フラグをパラメータなしで指定すると、 Adaptive Server は現在のユーザのオペレーティング・システム・ ログイン名を使用します。 -P password Adaptive Server のパスワードを指定します。-P フラグとパラメー タを省略すると、extractjava では、パスワードの入力が要求されま す。-P フラグをパスワードなしで指定すると、null のパスワードが 使用されます。 -D database JAR をインストールするデータベースの名前を指定します。-D フラ グを省略するか、-D フラグをパラメータなしで指定すると、ユー ザのデフォルト・データベースが使用されます。 157 extractjava -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名前 とロケーションを指定します。-I フラグとパラメータを省略するか、 -I フラグをパラメータなしで指定すると、SYBASE 環境変数に指定さ れたディレクトリにある interfaces ファイルが使用されます。 -a display_charset 文字セットがサーバとは異なるマシンで extractjava を使用できま す。- a を -J とともに使用すると、変換に必要な文字セット変換ファ イル (.xlt ファイル ) が指定できます。クライアントの文字セット が、デフォルトの文字セットと同じ場合にかぎり、- J を指定せずに - a を指定してください。 -J client_charset クライアントで使用する文字セットを指定します。extractjava は、 フィルタを使って client_charset と Adaptive Server 文字セットの間 で入力を変換します。 - J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 - J に引数を指定しないと、文字セット変換を無効にします。クライ アントとサーバが同じ文字セットを使用する場合に、このパラメー タを使用してください。 - J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。デフォルトの文字セットは、クライアントが使用して いる文字セットと必ず同じであるとはかぎりません。文字セットと それに関連するフラグの詳細については、 『システム管理ガイド』 を参照してください。 -z language extractjava のプロンプトとメッセージを表示するときの代替言語の 名前を指定します。- z フラグを指定しないと、extractjava はサーバ のデフォルト言語を使用します。言語はインストール時に Adaptive Server に追加できます。インストール後でも、langinstall ユーティリティまたは sp_addlanguage ストアド・プロシージャを 使用して言語を追加できます。 -t timeout SQL コマンドがタイムアウトするまでの秒数を指定します。タイ ムアウトを指定しないと、コマンドは無期限に実行されます。これ は、extractjava 内から発行されたコマンドに影響するもので、接続 時間には影響しません。extractjava にログインするためのデフォル トのタイムアウトは、60 秒です。 158 第5章 ユーティリティ・コマンド・リファレンス -v extractjava のバージョン番号と版権メッセージを表示して、終了し ます。 例 extractjava -j employees -f ‘/home/usera/jars/addr.jar’ -new employee という名前の JAR に関連するクラスをクライアント・ファ イル newaddr.jar にダウンロードします。 使用法 パーミッション • 指定したターゲット・クライアント・ファイルがすでに存在する 場合、そのファイルの内容は上書きされます。 • パラメータ・フラグ -f、-j、-S、-U、-P、-D、および -I を指定する 場合、フラグとその後のパラメータの間にはスペースを入れても 入れなくてもかまいません。 • extractjava を実行すると、sysxtypes に排他ロックが設定されます。 • -jar を指定すると、sysjars に排他ロックが設定されます。 extractjava を使用できるのは、システム管理者とデータベース所有者 のみです。 参照 コマンド remove java システム・プロ シージャ システム・テーブ ル ユーティリティ sp_helpjava sysjars, sysxtypes installjava 159 installjava installjava 説明 JAR をクライアント・ファイルから Adaptive Server にインストール します。 データベースで Java を使用可能にした場合に、このユーティリティ をどのように使用するかについては、『Adaptive Server Enterprise に おける Java』を参照してください。 構文 installjava -f file_name [ -new | -update ] [ -j jar_name] [ -S server ] [ -U username ] [ -P password ] [ -D database ] [ -I interfaces_file ] [ -a display_charset ] [ -J client_charset ] [ -z language ] [ -t timeout] [-v] パラメータ -f file_name データベースにインストールするクラスが入っているソース・ファ イルの名前を指定します。 new | update ソース・ファイル内のクラスがデータベースにすでに存在するかど うかを指定します。 new パラメータを指定する場合は、既存のクラスと同じ名前のクラ スをインストールすることはできません。 update パラメータを指定すると、既存のクラスと同じ名前のクラ スをインストールし、既存のクラスを新しくインストールしたクラ スに置き換えることができます。 -j jar_name データベースにインストールするクラスが入っている JAR の名前 を指定します。このパラメータを指定すると、JAR がデータベース に保存され、その中のクラスに関連付けられます。 -S server サーバの名前を指定します。 160 第5章 ユーティリティ・コマンド・リファレンス -U user_name Adaptive Server ログイン名を指定します。-U フラグとパラメータ を省略するか、-U フラグをパラメータなしで指定すると、 Adaptive Server は現在のユーザのオペレーティング・システム・ ログイン名を使用します。 -P password Adaptive Server のパスワードを指定します。-P フラグとパラメー タを省略すると、installjava では、パスワードの入力が要求されま す。-P フラグをパスワードなしで指定すると、null のパスワードが 使用されます。 -D database JAR をインストールするデータベースの名前を指定します。-D フラ グを省略するか、-D フラグをパラメータなしで指定すると、ユー ザのデフォルト・データベースが使用されます。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名前 とロケーションを指定します。-I フラグとパラメータを省略するか、 -I フラグをパラメータなしで指定すると、SYBASE 環境変数に指定さ れたディレクトリにある interfaces ファイルが使用されます。 -a display_charset 文字セットがサーバとは異なるマシンで installjava を使用できま す。-a を -J とともに使用すると、変換に必要な文字セット変換 ファイル (.xlt ファイル ) が指定できます。クライアントの文字セッ トが、デフォルトの文字セットと同じ場合にかぎり、-J を指定せず に -a を指定してください。 161 installjava -J client_charset クライアントで使用する文字セットを指定します。installjava は、 フィルタを使って client_charset と Adaptive Server 文字セットの間 で入力を変換します。 -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。 -J に引数を指定しないと、文字セット変換が無効になります。クラ イアントとサーバが同じ文字セットを使用する場合に、このパラ メータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。デフォルトの文字セットは、クライアントが使用して いる文字セットと必ず同じであるとはかぎりません。文字セットと それに関連するフラグの詳細については、 『システム管理ガイド』 を参照してください。 -z language installjava のプロンプトとメッセージを表示するときの代替言語の 名前を指定します。- z フラグを指定しないと、installjava はサーバ のデフォルト言語を使用します。言語はインストール時に Adaptive Server に追加できます。インストール後でも、langinstall ユーティリティまたは sp_addlanguage ストアド・プロシージャを 使用して言語を追加できます。 -t timeout SQL コマンドがタイムアウトするまでの秒数を指定します。タイ ムアウトを指定しないと、コマンドは無期限に実行されます。これ は、instjallava 内から発行されたコマンドに影響するもので、接続 時間には影響しません。installjava にログインするためのデフォル トのタイムアウトは、60 秒です。 -v installjava のバージョン番号と版権メッセージを表示して、終了し ます。 例 installjava -f ‘/home/usera/jars/addr.jar’ -new addr.jar とそのクラスをインストールしますが、JAR とクラスの関連 付けは保持しません。 installjava -f '/home/usera/jars/addr.jar' -update -j employees addr.jar を再インストールし、そのクラスを従業員 JAR 名に関連付け ます。 162 第5章 使用法 ユーティリティ・コマンド・リファレンス • インストール済みのクラスは、どのユーザでも参照できます。 • パラメータ・フラグ -f、-j、-S、-U、-P、-D、および -I を指定する 場合、フラグとその後のパラメータの間にはスペースを入れても 入れなくてもかまいません。 新規 JAR の追加 • -jar オプションとともに new を指定し、その名前の JAR がデータ ベースにすでに存在する場合には、例外が発生します。 • ソース JAR 内のクラスと同じ名前のクラスがデータベースにもあ る場合は、例外が発生します。 JAR とクラスの更新 警告 ! クラスの修正バージョンを再インストールすることによって、 カラム・データ型として使用しているクラスを変更する場合は、変更 したクラスが読み出せて、そのクラスをデータ型として使用している テーブル内の既存のオブジェクト ( ロー ) を使用できるかどうかを確 認してください。できなかった場合は、クラスを再インストールしな いと現在のオブジェクトにアクセスできません。 • • -jar オプションとともに -update を指定すると、次のようになり ます。 • データベース内のクラスのうちターゲット JAR に関連付けら れたクラスがすべて削除され、代わりにソース JAR ファイル 内のクラスがインストールされます。 • ソース JAR ファイル内に、データベースにはインストールさ れているが JAR には付加されていないクラスがある場合、そ のクラスがソース JAR ファイルからインストールされ、付加 されていないクラスが削除されます。 -jar オプションを指定せずに、-update を使用すると、次のように なります。 • ソース JAR ファイル内のクラスが同じ名前の付加されていな いクラスと置き換わります。 • ソース JAR ファイル内のインストールされていないクラス は、付加されていないクラスとしてデータベースにインス トールされます。 163 installjava ロック パーミッション • installjava を実行すると、sysxtypes に排他ロックが設定されます。 • -jar を指定すると、sysjars に排他ロックが設定されます。 installjava を使用できるのは、システム管理者とデータベース所有者 のみです。 参照 コマンド システム・ プロシージャ システム・ テーブル ユーティリティ 164 remove java sp_helpjava sysjars, sysxtypes extractjava 第5章 ユーティリティ・コマンド・リファレンス isql 説明 Adaptive Server の対話型 SQL パーサです。 構文 isql [-b] [-e] [-F] [-n] [-p] [-X] [-Y] [-a display_charset] [-A size] [-c cmdend] [-D database] [-E editor] [-h headers] [-H hostname] [-i inputfile] [-I interfaces_file] [-J client_charset [-l login_timeout] [-m errorlevel] [-o outputfile] [-P password] [-R remote_server_principal] [-s colseparator] [-S server] [-t timeout] [-U username] [-w columnwidth] [-z language] または isql -v go:コマンドの終了 reset:クエリ・バッファのクリア vi:デフォルトのエディタの呼び出し !! command:オペレーティング・システム・コマンドの実行 quit または exit:isql の終了 パラメータ -b テーブル・ヘッダの出力表示を無効にします。 -e 入力内容をエコーします。 165 isql -F FIPS フラガを使用可能にします。-F パラメータを指定した場合、 SQL 規格外のコマンドを検出すると Adaptive Server はメッセージ を返します。このオプションを使用しても SQL 拡張機能は無効に なりません。ANSI 規格に準拠しない SQL コマンドを発行しても、 処理は完了します。 -n -e とともに使用した場合、出力ファイルにエコーされた入力行か ら、行番号とプロンプト記号 (>) を削除します。 -p パフォーマンスの統計値を出力します。 -X クライアント側のパスワードを暗号化して、サーバへのログイン接 続を開始します。isql ( クライアント ) は、パラメータを暗号化する ようサーバに伝えます。サーバは、isql がパスワードを暗号化する ために使う暗号化キーを返送し、パスワードを受け取ると、その キーを使用してそのパスワードを確認します。 isql がクラッシュすると、システムは、パスワードを含むコア・ ファイルが作成されます。暗号化オプションを使用していない場 合、パスワードは、コア・ファイルにプレーン・テキストで表示さ れます。暗号化オプションを使用した場合、パスワードは表示され ません。 -Y Adaptive Server に、連鎖トランザクションを使用するよう伝え ます。 166 第5章 ユーティリティ・コマンド・リファレンス -a display_charset isql を実行するマシンの文字セットとは異なる文字セットを使用す る端末から、isql を実行できます。-a を -J とともに使用すると、変 換に必要な文字セット変換ファイル (.xlt ファイル ) が指定できま す。クライアントの文字セットがデフォルトの文字セットと同じ場 合にかぎり、-J を指定せずに -a を指定してください。 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットとクライアントの文字セットのどちら かが ascii_7 に設定されていれば、すべての 7 ビット ASCII 文字が変 換されることなくクライアントとサーバの間で受け渡されます。その 他の文字セットを使用している場合は、変換エラーが発生します。文 字セット変換の詳細については、『システム管理ガイド』を参照して ください。 -A size この isql セッションで使用するネットワーク・パケット・サイズを 指定します。次に例を示します。 isql -A 2048 この例では、isql セッションのパケット・サイズを 2,048 バイトに 設定します。ネットワーク・パケット・サイズをチェックするに は、次のように入力します。 select * from sysprocesses 値は network_pktsz という見出しの下に表示されます。 size は、default network packet size 設定変数と maximum network packet size 設定変数の間の値で、512 の倍数でなければなりません。 readtext や writetext のような大量の I/O 処理を行うオペレーション を実行する場合は、パケット・サイズをデフォルトより大きな値に 設定してください。 Adaptive Server のパケット・サイズの設定や変更は、リモート・ プロシージャ・コールのパケット・サイズに影響しません。 -c cmdend コマンド・ターミネータを変更します。デフォルトでは、行に "go" と入力するだけで、コマンドが終了し、Adaptive Server にそれら のコマンドが送信されます。コマンド・ターミネータを変更する場 合、SQL の予約語および制御文字は使用できません。 167 isql -D database isql セッションを開始するデータベースを選択します。 -E editor デフォルトのエディタである vi 以外のエディタを指定します。 -h headers カラム見出しから次のカラム見出しまでの間に出力されるローの数 を指定します。デフォルトでは、クエリ結果のセットごとに 1 回だ け見出しが出力されます。 -H hostname クライアント・ホスト名を設定します。 -i inputfile isql への入力に使用するオペレーティング・システム・ファイルの 名前を指定します。このファイルには、コマンド・ターミネータを 含むようにしてください ( デフォルトでは "go")。 次のように、パラメータを指定します。-i inputfile この例は、次と同義です。< inputfile -i を使用し、コマンド・ラインにパスワードを指定しない場合、 isql はパスワードを入力するよう要求します。 <inputfile を使用し、コマンド・ラインにパスワードを指定しない場合 は、入力ファイルの最初の行にパスワードを指定してください。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、isql は SYBASE 環境変数によって指定されたディレクトリにある interfaces という名前のファイルを探します。 168 第5章 ユーティリティ・コマンド・リファレンス -J client_charset クライアントで使用する文字セットを指定します。-J client_charset は、クライアントで使用する文字セットである client_charset とサー バの文字セット間の変換を Adaptive Server に要求します。フィル タによって、client_charset と Adaptive Server 文字セットとの間で 入力が変換されます。 -J に引数を指定しないと、文字セット変換は NULL に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設 定されます。デフォルトの文字セットは、必ずしもクライアントが 使用する文字セットと同じであるとはかぎりません。文字セットと それに関連するフラグの詳細については、『システム管理ガイド』 の「第 20 章 クライアント/サーバの文字セットの変換設定」を参 照してください。表 5-11 にプラットフォームのデフォルトを示し ます。 表 5-11: 異なるプラットフォームのデフォルトの文字セット プラットフォーム Sun Solaris、Digital UNIX、Pyramid、NCR、 RS/6000 HP-UX デフォルトの文字セット iso_1 roman8 OS/2、Novell NetWare 386 Macintosh cp850 mac -l login_timeout Adaptive Server に接続する場合の最大タイムアウト値を指定しま す。デフォルトは 60 秒です。この値は、サーバがログインの要求 に応答するのを isql が待つ時間に対してだけ影響します。実行中の コマンドのタイムアウト時間を指定するには、-t timeout パラメータ を使用します。 -m errorlevel エラー・メッセージの表示をカスタマイズします。指定した重大度 以上のレベルのエラーでは、メッセージ番号、ステータス、および エラー・レベルが表示されますが、エラー・テキストは表示されま せん。指定した重大度より低いレベルのエラーでは、何も表示され ません。 169 isql -o outputfile isql からの出力を保管するオペレーティング・システム・ファイル の名前を指定します。次のように、パラメータを指定します。-o outputfile この例は、次と同義です。> outputfile -P password Adaptive Server のパスワードを指定します。-P フラグを指定しな い場合、isql はパスワードの入力を要求するプロンプトを表示しま す。パスワードが NULL の場合は、パスワードを指定せずに -P フ ラグを指定してください。 -R remote_server_principal セキュリティ・メカニズムに指定されたリモート・サーバのプリン シパル名を指定します。デフォルトでは、サーバのプリンシパル名 はサーバのネットワーク名 (-S パラメータまたは DSQUERY 環境変 数で指定 ) と一致します。サーバのプリンシパル名とネットワーク 名が一致しない場合は、-R パラメータを使用してください。 -s colseparator カラム・セパレータ文字をリセットします。デフォルト・カラム・ セパレータ文字はブランクです。オペレーティング・システムに とって特別な意味を持つ文字 ( たとえば、"|"、";"、"&"、"<"、">") を使用する場合は、それらを引用符で囲むか、前にバックスラッ シュを付けてください。 -S server 接続する Adaptive Server の名前を指定します。isql は、interfaces ファイル内でこの名前のエントリを探します。引数なしで -S を指 定した場合、isql は SYBASE という名前のサーバを探します。-S を 指定しない場合、isql は DSQUERY 環境変数によって指定された サーバを探します。 -t timeout SQL コマンドがタイムアウトするまでの秒数を指定します。タイ ムアウトを指定しないと、コマンドは無期限に実行されます。これ は、isql 内から発行されたコマンドに影響するもので、接続時間に は影響しません。isql にログインするためのデフォルトのタイムア ウトは、60 秒です。 -U username ログイン名を指定します。ログイン名では、大文字と小文字を区別 します。 170 第5章 ユーティリティ・コマンド・リファレンス -w columnwidth 出力画面の幅を設定します。デフォルトでは、80 文字です。出力 行が画面幅いっぱいになった場合は、複数の行に分割されます。 -z language isql のプロンプトとメッセージの表示に使用する代替言語の公式名 です。-z フラグを指定しないと、isql はサーバのデフォルト言語を 使用します。言語はインストール時に Adaptive Server に追加でき ます。インストール後でも、langinstall ユーティリティまたは sp_addlanguage ストアド・プロシージャを使用して言語を追加で きます。 -v isql のバージョン番号と版権メッセージを表示して、終了します。 例 isql -Ujoe -Pabracadabra 1> select * 2> from authors 3> where city = "Oakland" 4> vi これで、クエリを編集できるテキスト・ファイルの状態になります。 ファイルに書き込みを行って保存すると、isql に戻ります。クエリが 表示されるので、行に "go" とだけ入力して実行してください。 isql -Ualma Password: 1> select * 2> from authors 3> where city = "Oakland" 4> reset 1> quit reset を使用するとクエリ・バッファがクリアされます。quit を使用す ると、オペレーティング・システムに戻ります。 isql -a mac -J roman8 roman8 文字セットを使用するサーバに対して、Macintosh から isql を実行していることを伝えます。 使用法 • isql の詳細については、 「第 1 章 isql ユーティリティの使用」を参 照してください。 • 設定パラメータ default network packet size および maximum network packet size の詳細については、 『Adaptive Server リファ レンス・マニュアル』を参照してください。 171 isql • 5701 サーバ・メッセージ ( データベースの変更 ) は、ログイン後 または use database コマンドの発行後には表示されません。 • 次に、オプションの新しいフラグを 2 つ示します。 -b - カラム・ヘッダの出力を無効にします。 -D database - isql が使用する起動データベースを選択します。 • エラー・メッセージのフォーマットは、isql の前のバージョンと 異なっています。これらのメッセージの内容に基づいたルーチン を実行するスクリプトは、修正が必要な場合があります。 • isql を対話的に使用するには、オペレーティング・システムのプ ロンプト画面で isql コマンド ( およびオプションのパラメータ ) を入力します。isql プログラムは、SQL コマンドを受け取り、そ れを Adaptive Server に送信します。結果は、フォーマットされ、 標準出力に出力されます。isql を終了するには、quit または exit を使用します。 • コマンド・ターミネータ ( デフォルトは、go) を行の先頭に入力し て、Adaptive Server にコマンドを送信してください。コマンド・ ターミネータに続けて、コマンドを実行する回数を整数で指定で きます。たとえば、あるコマンドを 100 回実行する場合は、次の ように入力します。 select x = 1 go 100 結果は、実行の終了時に 1 回表示されます。 • -y sybase_directory パラメータは廃棄されました。 • コマンド・ラインにオプションを複数回入力した場合、isql は最後 の値を使用します。たとえば、次のコマンドを入力したとします。 isql -c"." -csend -c では、最初の値 "." より 2 つ目の値 "send" が優先されます。こ れによって、設定したすべてのエイリアスを無効にすることがで きます。 • 172 現在のクエリ・バッファに対してエディタを呼び出すには、行の 先頭にエディタ名を入力します。EDITOR 環境変数で指定する と、希望する呼び出し可能なエディタを定義できます。EDITOR が定義されていない場合、デフォルトは vi です。 第5章 ユーティリティ・コマンド・リファレンス 行頭に "!!" を付けてコマンドを入力すると、オペレーティング・ システム・コマンドを実行できます。EDITOR 環境変数を定義し ないで、この方法を使用して代替エディタを呼び出すこともでき ます。 • 既存のクエリ・バッファをクリアするには、行に reset とだけ入 力します。isql は、未処理の入力内容をすべて破棄します。また、 行の任意の位置で [Ctrl + c] を押して、現在のクエリをキャンセル し、isql プロンプトに戻ることもできます。 • 次のような isql で、実行するクエリを含むオペレーティング・シ ステム・ファイルを読み込んでください。 isql -U alma -Ppasswd < input_file ファイルには、コマンド・ターミネータが必要です。結果は端末 に表示されます。次のようにして、クエリを含むオペレーティン グ・システム・ファイルを読み込み、結果を別のファイルに書き 込むことができます。 isql -U alma -Ppasswd < input_file > output_file • isql のフラグを使用する場合には、大文字と小文字を区別してく ださい。 • isql は、float データまたは real データの小数点以下 7 桁目以降を 丸めて、6 桁目までを表示します。 • isql を対話的に使用する場合は、次の コマンドを使用してオペ レーティング・システム・ファイルをコマンド・バッファに読み 込んでください。 :r filename コマンド・ターミネータをファイルに含めないでください。編集 が終了したら、コマンド・ターミネータを対話的に入力してくだ さい。 • isql が Adaptive Server に送る Transact-SQL 文にコメントを付け ることができます。コメントは、次のように "/*" で開始し、"*/" で終了します。 select au_lname, au_fname /*retrieve authors’ last and first names*/ from authors, titles, titleauthor where authors.au_id = titleauthor.au_id and titles.title_id = titleauthor.title_id /*this is a three-way join that links authors **to the books they have written.*/ 173 isql go コマンドをコメントにする場合は、コマンドが行の先頭になら ないようにします。次に例を示します。 /* **go */ 次のように入力したのでは、go コマンドはコメント化されません。 /* go */ 参照 174 コマンド データ型 create schema, set システム ESP xp_sendmail システム・ プロシージャ sp_addlanguage、sp_addlogin、sp_addremotelogin、 sp_add_resource_limit、sp_bindexeclass、sp_configure、 sp_defaultlanguage、sp_droplanguage、sp_helplanguage、 sp_processmail、sp_remoteoption、sp_serveroption、 sp_showcontrolinfo、sp_unbindexeclass、sp_volchanged 真数値データ型 第5章 ユーティリティ・コマンド・リファレンス isql_dce 説明 Adaptive Server の対話型 SQL パーサです。 構文 isql_dce [-b] [-e] [-F] [-n] [-p] [-v] [-X] [-Y] [-a display_charset] [-A size] [-c cmdend] [-D database] [-E editor] [-h headers] [-H hostname] [-i inputfile] [-I interfaces_file] [-J client_charset] [-K keytab_file] [-l login_timeout] [-m errorlevel] [-o outputfile] [-P password] [-R remote_server_principal] [-s colseparator] [-S server] [-t timeout] [-U username] [-w columnwidth] [-z language] または isql_dce -v go:コマンドの終了 reset:クエリ・バッファのクリア vi:デフォルト・エディタの起動 !! command:オペレーティング・システム・コマンドの実行 quit または exit:isql_dce の終了 パラメータ -e 入力内容をエコーします。 -F FIPS フラガを使用可能にします。このパラメータを指定すると、 サーバは SQL 規格外のすべてのコマンドにフラグを立てます。 -p パフォーマンスの統計値を出力します。 175 isql_dce -n -e とともに使用した場合、OUTPUT ファイルにエコーされた入力 行から、行番号とプロンプト記号 (>) を削除します。 -v 現在使用している isql_dce ソフトウェアのバージョン番号と版権 メッセージを表示して、終了します。 -X クライアント側のパスワードを暗号化して、サーバへのログイン接 続を開始します。isql_dce ( クライアント ) は、パスワードを暗号 化するようサーバに伝えます。サーバは、isql_dce がパスワードを 暗号化するために使う暗号化キーを返送し、パスワードを受け取る と、そのキーを使用してそのパスワードを確認します。 isql_dce がクラッシュすると、パスワードを含むコア・ファイルが 作成されます。暗号化オプションを使用していない場合、パスワー ドは、コア・ファイルにプレーン・テキストで表示されます。暗号 化オプションを使用した場合、パスワードは表示されません。 -Y Adaptive Server に、連鎖トランザクションを使用するよう伝えます。 -a display_charset isql_dce を実行しているマシンの文字セットとは異なる文字セット を使用する端末から、isql_dce を実行できます。-a を -J とともに使 用すると、変換に必要な文字セット変換ファイル (.xlt ファイル ) が 指定できます。クライアントの文字セットがデフォルトの文字セッ トと同じ場合にかぎり、-J を指定せずに -a を指定してください。 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットとクライアントの文字セットのどちら かが ascii_7 に設定されていれば、すべての 7 ビット ASCII 文字が変 換されることなくクライアントとサーバの間で受け渡されます。その 他の文字セットを使用している場合は、変換エラーが発生します。文 字セット変換の詳細については、『システム管理ガイド』を参照して ください。 -A size この isql_dce セッションで使用するネットワーク・パケット・サイ ズを指定します。次に例を示します。 176 第5章 ユーティリティ・コマンド・リファレンス isql_dce -A 2048 この例では、isql_dce セッションのパケット・サイズを 2,048 バイ トに設定します。パケット・サイズをチェックするには、次のよう に入力します。 select * from sysprocesses 値は network_pktsz という見出しの下に表示されます。 size は、default network packet size 設定変数と maximum network packet size 設定変数の間の値で、512 の倍数でなければなりません。 readtext や writetext のような大量の I/O 処理を行うオペレーション を実行する場合は、パケット・サイズをデフォルトより大きな値に 設定してください。 Aptive Server のパケット・サイズの設定や変更は、リモート・プ ロシージャ・コールのパケット・サイズには影響しません。 -c cmdend コマンド・ターミネータを変更します。デフォルトでは、行に "go" と入力するだけで、コマンドが終了し、Adaptive Server にそれら のコマンドが送信されます。コマンド・ターミネータを変更する場 合、SQL の予約語および制御文字は使用できません。 -D database isql_dce セッションを開始するデータベースを選択します。 -E editor デフォルトのエディタである vi 以外のエディタを指定します。 -h headers カラム見出しから次のカラム見出しまでの間に出力されるローの数 を指定します。デフォルトでは、クエリ結果のセットごとに 1 回だ け見出しが出力されます。 -H hostname クライアント・ホスト名を設定します。 177 isql_dce -i inputfile isql_dce への入力に使用するオペレーティング・システム・ファイ ルの名前を指定します。ファイルには、コマンド・ターミネータを 含むようにしてください ( デフォルトでは "go")。 次のように、パラメータを指定します。-i inputfile この例は、次と同義です。< inputfile -i を使用し、コマンド・ラインにパスワードを指定しない場合、 isql_dce はパスワードを入力するよう要求します。 <inputfile を使用し、コマンド・ラインにパスワードを指定しない場合 は、入力ファイルの最初の行にパスワードを指定してください。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。-I を指定しない場合、isql_dce は、 SYBASE の環境変数によって指定されたディレクトリにある interfaces という名前のファイルを検索します。 -J client_charset クライアントで使用する文字セットを指定します。 -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に 要求します。フィルタによって、client_charset と Adaptive Server 文字セットとの間で入力が変換されます。 -J に引数を指定しないと、文字セット変換は null に設定されます。 この場合、変換は行われません。クライアントとサーバが同じ文字 セットを使用する場合に、このパラメータを使用してください。 -J を省略すると、文字セットはプラットフォームのデフォルトに設定 されます。デフォルトの文字セットは、必ずしもクライアントが使用 する文字セットと同じであるとはかぎりません。文字セットと関連す るフラグの詳細については、 『システム管理ガイド』を参照してくだ さい。表 5-12 にプラットフォームのデフォルトを示します。 178 第5章 ユーティリティ・コマンド・リファレンス 表 5-12: 異なるプラットフォームのデフォルトの文字セット プラットフォーム Sun Solaris、Digital UNIX、Pyramid、NCR、 RS/6000 HP-UX OS/2、Novell NetWare 386 デフォルトの文字セット iso_1 roman8 cp850 Macintosh mac -Kkeytab_file DCE セキュリティのみと一緒に使用できます。このパラメータは、 -U パラメータで指定されたユーザのセキュリティ・キーが保存さ れた DCE の keytab ファイルを指定します。keytab ファイルは、 DCE の dcecp ユーティリティで作成できます。詳細については DCE のマニュアルを参照してください。 -K パラメータを指定しない場合、isql_dce のユーザは -U パラメータで 指定したユーザ名と同じ名前で DCE にログインしなければなりま せん。 -l login_timeout Adaptive Server に接続する場合の最大タイムアウト値を指定しま す。デフォルトは 60 秒です。この値は、サーバがログインの要求 に応答するのを isql_dce が待つ時間に対してだけ影響します。実行 中のコマンドのタイムアウト時間を指定するには、-t timeout パラ メータを使用します。 -m errorlevel エラー・メッセージの表示をカスタマイズします。指定した重大度 以上のレベルのエラーでは、メッセージ番号、ステータス、および エラー・レベルが表示されますが、エラー・テキストは表示されま せん。指定した重大度より低いレベルのエラーでは、何も表示され ません。 -o outputfile isql_dce からの出力を保管するオペレーティング・システム・ファ イルの名前を指定します。次のように、パラメータを指定します。 -o outputfile この例は、次と同義です。outputfile -P password Adaptive Server のパスワードを指定します。-P フラグを指定しな い場合、isql_dce はパスワードの入力を要求するプロンプトを表示 します。パスワードが NULL の場合は、コマンド・ラインの最後 にパスワードなしで -P フラグを指定してください。 179 isql_dce -s colseparator カラム・セパレータ文字をリセットします。デフォルト・カラム・ セパレータ文字はブランクです。オペレーティング・システムに とって特別な意味を持つ文字 ( たとえば、"|"、";"、"&"、"<"、">") を使用する場合は、それらを引用符で囲むか、前にバックスラッ シュを付けてください。 -S server 接続する Adaptive Server の名前を指定します。isql_dce は、 interfaces ファイル内でこの名前のエントリを探します。引数なし で -S を指定した場合、isql_dce は SYBASE という名前のサーバを 探します。-S を指定しない場合、isql_dce は DSQUERY 環境変数に よって指定されたサーバを探します。 -t timeout SQL コマンドがタイムアウトするまでの秒数を指定します。タイ ムアウトを指定しないと、コマンドは無期限に実行されます。これ は、isql_dce 内から発行されたコマンドに影響するもので、接続時 間には影響しません。isql_dce にログインするためのデフォルトの タイムアウトは、60 秒です。 -U username ログイン名を指定します。ログイン名は、大文字と小文字を区別し ます。 -w columnwidth 出力画面の幅を設定します。デフォルトでは、80 文字です。出力 行が画面幅いっぱいになった場合は、複数の行に分割されます。 -z language isql_dce のプロンプトとメッセージの表示に使用する、代替言語の 公式名です。-z フラグを指定しないと、isql_dce はサーバのデフォ ルト言語を使用します。言語はインストール時に Adaptive Server に追加できます。インストール後でも、langinstall ユーティリティ または sp_addlanguage ストアド・プロシージャを使用して言語を 追加できます。 -A size この isql_dce セッションで使用するネットワーク・パケット・サイ ズを指定します。次に例を示します。 180 第5章 ユーティリティ・コマンド・リファレンス isql_dce -A 2048 この例では、isql_dce セッションのパケット・サイズを 2,048 バイ トに設定します。size は、default network packet size 設定パラメー タと max network packet size 設定パラメータの間にあり、additional network memory 設定パラメータの値の 3 分の 1 で、512 の倍数でな ければなりません。 -v isql_dce のバージョン番号と版権メッセージを表示して、終了し ます。 例 isql_dce -Ujoe -Pabracadabra 1> select * 2> from authors 3> where city = "Oakland" 4> vi これで、クエリを編集できるテキスト・ファイルの状態になります。 ファイルに書き込みを行って保存すると、isql_dce に戻ります。クエ リが表示されるので、行に "go" とだけ入力して実行してください。 isql_dce -U alma Password: 1> select * 2> from authors 3> where city = "Oakland" 4> reset 1> quit reset を使用するとクエリ・バッファがクリアされます。quit を使用す ると、オペレーティング・システムに戻ります。 isql_dce -a mac -J roman8 roman8 文字セットを使用するサーバに対して、Macintosh から isql_dce を実行していることを伝えます。 使用法 • isql_dce は、IBM RS/6000 の UNIX プラットフォーム以外では使 用できません。 • isql_dce の詳細については、 「第 1 章 isql ユーティリティの使用」 を参照してください。 • 設定パラメータ default network packet size および maximum network packet size の詳細については、 『Adaptive Server リファ レンス・マニュアル』を参照してください。 181 isql_dce • isql_dce を対話的に使用するには、オペレーティング・システム のプロンプト画面で isql_dce コマンド ( およびオプションのフラ グ ) を入力します。isql_dce プログラムは、SQL コマンドを受け 取り、それを Adaptive Server に送信します。結果は、フォー マットされ、標準出力に出力されます。isql_dce を終了するには、 quit または exit を使用します。 • コマンド・ターミネータ ( デフォルトは、go) を行の先頭に入力し て、Adaptive Server にコマンドを送信してください。コマンド・ ターミネータに続けて、コマンドを実行する回数を整数で指定で きます。たとえば、あるコマンドを 100 回実行する場合は、次の ように入力します。 select x = 1 go 100 結果は、実行の終了時に 1 回表示されます。 • コマンド・ラインにオプションを複数回入力した場合、isql_dce は最後の値を使用します。たとえば、次のコマンドを入力したと します。 isql_dce -c"." -csend -c では、最初の値 "." より 2 つ目の値 "send" が優先されます。こ れによって、設定したすべてのエイリアスを無効にすることがで きます。 • 現在のクエリ・バッファに対してエディタを呼び出すには、行の 先頭にエディタ名を入力します。EDITOR 環境変数で指定する と、希望する呼び出し可能なエディタを定義できます。EDITOR が定義されていない場合、デフォルトは vi です。 行頭に "!!" を付けてコマンドを入力すると、オペレーティング・ システム・コマンドを実行できます。EDITOR 環境変数を定義し ないで、この方法を使用して代替エディタを呼び出すこともでき ます。 • 既存のクエリ・バッファをクリアするには、行に reset とだけ入 力します。isql_dce は、未処理の入力をすべて消去します。また、 行の任意の位置で [Ctrl + c] を押して、現在のクエリをキャンセル し、isql_dce プロンプトに戻ることもできます。 • 次のような isql_dce で、実行するクエリを含むオペレーティン グ・システム・ファイルを読み込んでください。 isql_dce -U alma -P****** < input_file 182 第5章 ユーティリティ・コマンド・リファレンス ファイルには、コマンド・ターミネータが必要です。結果は端末 に表示されます。次のようにして、クエリを含むオペレーティン グ・システム・ファイルを読み込み、結果を別のファイルに書き 込むことができます。 isql_dce -U alma -P****** < input_file > output_file • isql_dce のフラグを使用する場合には、大文字と小文字を区別し てください。 • isql_dce は、float データまたは real データの小数点以下 7 桁目以 降を丸めて、6 桁目までを表示します。 • isql_dce を対話的に使用する場合は、次の コマンドを使用してオ ペレーティング・システム・ファイルをコマンド・バッファに読 み込んでください。 :r filename コマンド・ターミネータをファイルに含めないでください。編集 が終了したら、コマンド・ターミネータを対話的に入力してくだ さい。 • isql が Adaptive Server に送る Transact-SQL 文にコメントを付け ることができます。詳細については、 『Adaptive Server リファレ ンス・マニュアル』を参照してください。 参照 コマンド データ型 create schema, set システム ESP xp_sendmail システム・ プロシージャ sp_addlanguage, sp_addlogin, sp_addremotelogin, sp_add_resource_limit, sp_bindexeclass, sp_configure, sp_defaultlanguage, sp_droplanguage, sp_helplanguage, sp_processmail, sp_remoteoption, sp_serveroption, sp_showcontrolinfo, sp_unbindexeclass, sp_volchanged 真数値データ型 183 langinstall langinstall 説明 Adaptive Server に新しい言語をインストールします。 構文 langinstall [-S server] [-I interfaces_file] [-P password] [-R release_number] language character_set または langinstall -v パラメータ -S server 接続する Adaptive Server の名前を指定します。-S を指定しない場 合、langinstall は DSQUERY 環境変数によって指定されたサーバを 使用します。DSQUERY が設定されていない場合、langinstall は SYBASE という名前のサーバに接続しようとします。 -I interfaces_file Adaptive Server に接続するときに langinstall が検索する interfaces ファイルの名前とロケーションを指定します。-I を指定しない場 合、langinstall は SYBASE 環境変数によって指定されたディレクト リにある interfaces ファイルを使用します。SYBASE 環境変数が設 定されていない場合、langinstall は、デフォルトの SYBASE ディレ クトリを探します。 -P password "sa" アカウントのパスワードを指定します。-P を指定しない場合、 langinstall は "sa" アカウントのパスワードの入力を要求するプロン プトを表示します。 -R release_number master..sysmessages のメッセージをアップグレードするために使用 するリリース番号を n.n.n の形式で指定します。langinstall が失敗 したとき、またはユーザ・エラーや sysmessages の中のメッセージ が古くなっていると考えられるようなときにだけ、-R オプション を使用してください。 language インストールする言語の公式名です。言語は必ず指定してください。 184 第5章 ユーティリティ・コマンド・リファレンス character_set Adaptive Server のデフォルト文字セット名です。character_set は、 その言語用のローカライゼーション・ファイルがあるディレクトリ 名を示します。公式言語用のローカライゼーション・ファイルであ る common.loc と server.loc は、文字セットのディレクトリ $SYBASE/locales/language/character_set にあります。文字セットは必 ず指定してください。 -v langinstall のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 • Adaptive Server インストール・プログラムは、新規インストール とアップグレードのいずれにおいても langinstall を自動的に起動 します。 • langinstall は、次のことを実行します。 • sp_addlanguage ストアド・プロシージャを使用して、指定さ れた言語に対応する情報を master..syslanguages に追加します。 言語がすでに存在する場合、langinstall は、syslanguages 内の 該当するローを更新します。 • master..sysmessages に対するエラー・メッセージの追加、更 新、および削除を必要に応じて行います。 • 新しいリリース番号を挿入して syslanguages.update を更新し ます。 • langinstall は、ローカライゼーション・ファイルの中で使用する セクション内のエントリを有効にします。エントリが 1 つでも足 りない場合には、langinstall はエラー・メッセージを表示し、 syslanguages に言語を追加しません。 • langinstall は、使用する common.loc および server.loc の各ローカラ イゼーション・ファイルのバージョン番号を比較します。この 2 つのバージョン番号が異なる場合、langinstall は、警告メッセー ジを表示します。syslanguages.upgrade は、つねに server.loc のバー ジョン番号に従って設定されます。 • -R パラメータを指定すると、langinstall は現在のリリースより前 のリリースからメッセージを収集します。langinstall は、収集し た既存のメッセージとこれからインストールされるメッセージと を比較し、それらが異なっている場合は、メッセージを置き換え ます。 185 langinstall たとえば、現在のリリースが 11.5 で、前のリリースが 10.0 である とき、sysmessages が適切でないと思われる場合は、-R 10.0 と指定 して、前のリリース ( この場合は 10.0) のメッセージを syslanguages.upgrade カラムに追加します。これにより langinstall は、Adaptive Server 10.0 のすべてのメッセージをインストールし ます。 パーミッション langinstall を実行できるのは、"sa" アカウントだけです。 使用される表 master.dbo.syslanguages, master.dbo.sysmessages 参照 システム・ プロシージャ ユーティリティ 186 sp_addlanguage, sp_addlogin, sp_configure, sp_defaultlanguage, sp_droplanguage, sp_helplanguage srvbuild 第5章 ユーティリティ・コマンド・リファレンス optdiag 説明 オプティマイザ統計値を表示します。または、更新された統計値をシ ステム・テーブルにロードします。 構文 optdiag [ binary ] [simulate ] statistics { -i input_file | database[.owner[.[table[.column]]]] [-o output_file] } [-U user_name] [-P password] [-I interfaces_file] [-S server] [-v] [-h] [-s] [-T flag_value] [-z language] [-J client_charset] [-a display_charset] パラメータ binary 統計値を人間が判読できる形式とバイナリ形式で抽出します。入力 ファイル (-i input_file) を指定すると、バイナリ形式の統計値がシス テム・テーブルにロードされます。 simulate optdiag がシミュレートされた統計値を表示またはロードするよう に指定します。詳細については、『パフォーマンス&チューニン グ・ガイド』を参照してください。 -i input_file - optdiag への入力に使用するオペレーティング・システム・ファ イルの名前を指定します。入力ファイルを指定すると、optdiag は 指定したファイル内の値を使ってテーブルまたはカラムのオプティ マイザ統計値を更新します (「入力モード」ともいいます )。 database 統計値を表示するデータベースの名前を指定します。入力モードで は、optdiag は入力ファイルに指定されたデータベース名を使用し、 コマンド・ラインに指定されたデータベース名は無視します。 187 optdiag owner テーブル所有者の名前を指定します。 • 表示モードでは、所有者を指定せず、テーブル名を指定した場 合には、optdiag はテーブルのすべての所有者について出力を 表示します。 • 入力モードでは、optdiag はコマンド・ラインに指定された テーブル所有者を無視し、入力ファイル内の値を使用します。 table 統計値を確認するテーブルの名前を指定します。 • 所有者名またはテーブル名を指定しない場合、optdiag はデー タベース内の全テーブルに関する統計値を表示します。 • 所有者名を指定し、テーブル名を指定しない場合、optdiag は 指定した所有者に属するすべてのテーブルを表示します。 • 入力モードでは、optdiag はコマンド・ラインに指定された テーブル名を無視し、入力ファイル内の値を使用します。 column 調査するカラムの名前を指定します。 • カラムを指定しない場合、optdiag はテーブルに関するすべて の統計値を表示します。 • 入力モードでは、optdiag はコマンド・ラインに指定されたカ ラム名を無視し、入力ファイル内の値を使用します。 -o output_file optdiag からの出力を保管するオペレーティング・システム・ファ イルの名前を指定します。同じ名前のファイルがすでに存在する場 合、optdiag は警告を表示せずに既存のファイルを上書きします。 -U user_name Adaptive Server ログイン名を指定します。 -P password Adaptive Server のパスワードを指定します。-P フラグを指定しな い場合、optdiag はパスワードの入力を要求するプロンプトを表示 します。 188 第5章 ユーティリティ・コマンド・リファレンス -I interfaces_file Adaptive Server に接続するときに使用する interfaces ファイルの名 前とロケーションを指定します。 -I で interfaces ファイルを指定しない場合、optdiag は SYBASE 環境 変数で指定されたディレクトリにある interfaces という名前のファ イルを探します。SYBASE 環境変数が設定されていない場合は、 optdiag はデフォルトの $SYBASE ディレクトリを探します。 -S server 接続する Adaptive Server の名前を指定します。optdiag は、 interfaces ファイル内でこの名前のエントリを探します。 • サーバ名を指定しないで -S を使用した場合、optdiag は SYBASE という名前のサーバを探します。 • -S を指定しない場合、optdiag は DSQUERY 環境変数によって 指定されたサーバを探します。 -a display_charset optdiag を実行するマシンの文字セットとは異なる文字セットを使 用する端末から、optdiag を実行できます。 • -a を -J とともに使用すると、変換に必要な文字セット変換ファ イル (.xlt ファイル ) が指定できます。 • クライアントの文字セットがデフォルトの文字セットと同じ場 合にかぎり、-J を指定せずに -a を指定してください。 注意 ascii_7 文字セットは、すべての文字セットと互換性があります。 Adaptive Server の文字セットとクライアントの文字セットのどちら かが ascii_7 に設定されていれば、すべての 7 ビット ASCII 文字が変 換されることなくクライアントとサーバの間で受け渡されます。その 他の文字セットを使用している場合は、変換エラーが発生します。文 字セット変換の詳細については、『システム管理ガイド』を参照して ください。 -z language サーバが日付フォーマットと optdiag のプロンプトおよびメッセー ジの表示に使用する代替言語の公式名です。-z フラグを指定しない と、optdiag はサーバのデフォルト言語を使用します。 言語は、インストール時とそのあとのどちらでも Adaptive Server に追加できます。Adaptive Server のインストール後に言語を追加 する場合は、langinstall ユーティリティまたは sp_addlanguage スト アド・プロシージャを使用します。 189 optdiag -J client_charset クライアントで使用する文字セットを指定します。フィルタによっ て、client_charset と Adaptive Server 文字セットとの間で入力が変 換されます。 • -J client_charset は、クライアントで使用する文字セットである client_charset とサーバの文字セット間の変換を Adaptive Server に要求します。 • 文字セット名なしで -J を指定すると、文字セット変換が NULL に設定され、変換は行われません。クライアントとサーバが同 じ文字セットを使用する場合、-J だけを指定してください。 • -J を省略すると、文字セットはプラットフォームのデフォルト 文字セットに設定されます。フィルタによって、デフォルト文 字セットと Adaptive Server 文字セットとの間で入力が変換さ れます。デフォルトの文字セットは、クライアントが使用する 文字セットと同じであるとはかぎりません。 文字セットと関連するフラグの詳細については、 『システム管 理ガイド』を参照してください。 -v optdiag のバージョン番号と版権メッセージを表示して、終了します。 -h optdiag の構文ヘルプを表示します。 -s optdiag の出力にシステム・テーブルを含めます。デフォルトでは、 ユーザ・テーブルだけが含まれます。 -Tflag_value optdiag セッションのトレース・フラグをセットします。optdiag の トレース・フラグを 表 5-13 に示します。 190 第5章 ユーティリティ・コマンド・リファレンス 表 5-13: optdiag のトレース・フラグ フラグ 値 1 2 意味 使用している Adaptive Server の optdiag バージョンが入力ファイ ル内の Adaptive Server のバージョンと一致しない場合でも、警 告を表示して停止することはありません。 入力モードにおいて、"Next table is table_name" というステータ ス・メッセージを表示します。 4 入力モードにおいて、ヒストグラムのロード中にステップ番号の 一貫性の検査を行いません。 6 入力モードにおいて、入力ファイルの各行を表示します。 このフラグは表示モードでは無効です。 注意 optdiag は、シングルバイト文字セットでのみ動作します。サー バがマルチバイト文字セットを使用している場合には、optdiag は警 告メッセージを表示して、終了します。 例 optdiag statistics pubs2 -Usa -Ppasswd -o pubs2.opt pubs2 データベースにある全ユーザ・テーブルの統計値を表示し、そ の出力を pubs2.opt ファイルに保存します。 optdiag statistics pubs2..titles -Usa -Ppasswd -o titles.opt titles テーブルの統計値を表示します。 optdiag statistics pubs2..titles -Usa -Ppasswd -o titles.opt -J roman8 -z french 統計値を roman8 文字セットで表示し、ロー・ラベルとエラー・メッ セージをフランス語で表示します。 optdiag binary statistics pubs2..titles.price -Usa -Ppasswd -o price.opt titles テーブルの price カラムの統計値をバイナリ形式で表示します。 optdiag statistics -i price.opt -Usa -Ppasswd 編集された統計値を price.opt ファイルからロードします。 使用法 • optdiag コマンド、および optdiag 出力の詳細については、 『パ フォーマンス&チューニング・ガイド』を参照してください。 • optdiag を使用して統計値を変更する方法の詳細については、 『パ フォーマンス&チューニング・ガイド』を参照してください。 191 optdiag • デフォルトでは、データベースの統計値を表示するときに optdiag はシステム・テーブルを統計の対象としません。このコ マンドの出力にシステム・テーブルを含めるには、-s フラグを使 用します。 • binary モードを使用すると、optdiag は、次の例のように、コメン ト記号 (#s) から始まる人間が判読できる値を表示します。 Statistics for column: "price" Last update of column statistics: Jan 20 1998 7:16PM Statistics loaded from Optdiag. Range cell density: 0x3f8b9cfefece26bf # Range cell density: 0.0134830400000000 Total density: 0x3f8b9cfefece26bf # Total density: 0.0134830400000000 Range selectivity: default used (0.33) # Range selectivity: default used (0.33) In between selectivity: default used (0.25) # In between selectivity: default used (0.25) • 入力ファイルを指定して optdiag を実行し、統計値を変更する場 合、"#" より後にある文字は無視されます。 • float 値を変換する場合、入力ファイルを使用すると、丸めエラー が発生することがあります。 同じハードウェア・プラットフォームで統計値をロードする場合 は、精度を高めるためにバイナリ値を使って統計値を編集してく ださい。 バイト順序と optdiag のバイナリ・ファイル • バイト順序が異なるマシンの Adaptive Server 間で統計値を移動 する場合は、binary モード・オプションを使用しないでください。 • 互換性のないアーキテクチャのサーバでは、バイナリ形式の 統計値をコメント化し、人間が判読できる形式の統計値を ロードしてください。 • 互換性のあるアーキテクチャのサーバでは、バイナリ形式と 人間が判読できる形式のどちらの統計値もロードできます。 入力モード 192 • -i input_file 構文を使用すると、optdiag は指定されたファイルを読 み込み、sysstatistics 内の統計値を更新します。 • 入力モードでは、optdiag は設定パラメータ allow update to system tables を変更します。つまり、セッションの開始時にこのパラ メータを 1 に設定し、終了時に 0 に設定します。 第5章 • ユーティリティ・コマンド・リファレンス ヒストグラム入力時には、プロセスは次に示すルールをチェック し、違反がある場合はエラー・メッセージを表示します。 • -T4 トレース・フラグを指定していないかぎり、ステップ番号 は単調に増加しなければなりません。 • ステップのカラム値は単調に増加しなければなりません。 • 各セルのウェイトは 0.0 ~ 1.0 の範囲になければなりません。 • 1 カラムの総ウェイトは 1.0 に近い値でなければなりません。 • 先頭のセルは null 値を表し、null 入力可でないカラムにも必 要です。null 値を表すセルは 1 つしか存在できません。 • 2 つの隣り合うセルの両方が < ( より小 ) 演算子を使用してい てはなりません。 参照 コマンド システム・ プロシージャ create index, delete statistics, set, update statistics sp_addlogin, sp_configure, sp_defaultlanguage, sp_droplanguage, sp_flushstats, sp_helplanguage 193 showserver showserver 説明 ローカルのマシンで現在稼働している Adaptive Server と Backup Server を表示する。 構文 showserver パラメータ なし 例 showserver USER PID %CPU %MEM SZ RSS TT STAT START TIME COMMAND user114276 0.0 1.7 712 1000 ? S Apr 5514:05 dataserver -d greensrv.dat -sgreensrv -einstall/greensrv+_errorlog sybase 1071 0.0 1.4 408 820 ? S Mar 28895:38 /usr/local/sybase/bin/dataserver -d/dev/rsd1f -e/install/errorlog user128493 0.0 0.0 3692 0 ? IW Apr 1 0:10 backupserver -SSYB_BACKUP -e/install/backup.log -Iinterfaces -Mbin/sybmultbuf -Lus_english -Jiso_1 使用法 • showserver は、Adaptive Server または Backup Server に関する処 理情報を表示します。実行中のサーバがない場合は、ヘッダのみ を表示します。 参照 194 ユーティリティ langinstall コマンド 関数 dataserver, startserver host_name 第5章 ユーティリティ・コマンド・リファレンス sqlloc 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・インタフェース ) を使用して、Adaptive Server 用の言語、文字セット、ソート順のデ フォルトをインストールしたり、変更したりします。 構文 sqlloc [-S server] [-U user] [-P password] [-s sybase_dir] [-I interfaces_file] [-r resource_file] または sqlloc -v パラメータ -S server 接続する Adaptive Server の名前を指定します。 -U user ログイン名を指定します。ログイン名は、大文字と小文字を区別し ます。 -P password "sa" アカウントのパスワードを指定します。 -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v sqlloc のバージョン番号と版権メッセージを表示して、終了します。 使用法 • SYBASE 環境変数を Sybase Adaptive Server の現在のバージョン のロケーションに設定してから、sqlloc を使用してください。 • バージョン番号を表示するために -v パラメータしか使用しない場 合以外は、DISPLAY 環境変数を設定してから sqlloc を呼び出し てください。 • sqlloc ユーティリティ・プログラムの詳細については、 『Adaptive ServerEnterprise Installation Guide on UNIX Platforms』を参照してください。 195 sqlloc パーミッション sqlloc を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ 196 langinstall, sqllocres 第5章 ユーティリティ・コマンド・リファレンス sqllocres 説明 リソース・ファイルを使用して、Adaptive Server の言語、文字セット、 ソート順のデフォルトをインストールしたり、変更したりします。 構文 sqllocres [-S server] [-U user] [-P password] [-s sybase_dir] [-I interfaces_file] [-r resource_file] または sqllocres -v パラメータ -S server 接続する Adaptive Server の名前を指定します。 -U user ログイン名を指定します。 -P password "sa" アカウントのパスワードを指定します。 -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v sqllocres のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 パーミッション • SYBASE 環境変数を Sybase Adaptive Server の現在のバージョン のロケーションに設定してから、sqllocres を使用してください。 • sqllocres ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 sqllocres を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ langinstall, sqlloc 197 sqlupgrade sqlupgrade 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・インタフェース ) を使用して、現在インストールされている Adaptive Server のリリー スを最新のリリースにアップグレードします。 構文 sqlupgrade [-s sybase_dir] [-r resource_file] または sqlupgrade -v パラメータ -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v sqlupgrade のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 • SYBASE 環境変数を Sybase Adaptive Server の現在のバージョンのロ ケーションに設定してから、sqlupgrade を使用してください。 • バージョン番号を表示するために -v パラメータしか使用しない場 合以外は、DISPLAY 環境変数を設定してから sqlupgrade を呼び 出してください。 • パーミッション sqlupgrade ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 sqlupgrade を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ 198 sqlupgraderes 第5章 ユーティリティ・コマンド・リファレンス sqlupgraderes 説明 リソース・ファイルを使用して、現在インストールされている Adaptive Server のリリースを最新のリリースへアップグレードします。 構文 sqlupgraderes [-s sybase_dir] [-r resource_file] または sqlupgraderes -v パラメータ -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v sqlupgraderes のバージョン番号と版権メッセージを表示して、終 了します。 使用法 • • パーミッション SYBASE 環境変数を Sybase Adaptive Server の現在のバージョンのロ ケーションに設定してから、sqlupgraderes を使用してください。 sqlupgraderes ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 sqlupgraderes を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ sqlupgrade 199 srvbuild srvbuild 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・インタフェース ) を使用して、キー設定属性のデフォルトまたはユーザ定義の値を使っ て Adaptive Server、Backup Server、Monitor Server、XP Serve を新 しく作成します。 構文 srvbuild [-s sybase_dir] [-I interfaces_file] [-r resource_file] または srvbuild -v パラメータ -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v srvbuild のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 • SYBASE 環境変数を Sybase Adaptive Server の現在のバージョン のロケーションに設定してから、srvbuild を使用してください。 • バージョン番号を表示するために -v パラメータしか使用しない場 合以外は、DISPLAY 環境変数を設定してから srvbuild を呼び出し てください。 • パーミッション srvbuild ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 srvbuild を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ 200 srvbuildres 第5章 ユーティリティ・コマンド・リファレンス srvbuildres 説明 リソース・ファイルを使用して、キー設定属性のデフォルトまたは ユーザ定義の値を使って Adaptive Server、Backup Server、Monitor Server、XP Serve を新しく作成します。 構文 srvbuildres [-s sybase_dir] [-I interfaces_file] [-r resource_file] または srvbuildres -v パラメータ -s sybase_dir SYBASE 環境変数に使用する値を指定します。 -I interfaces_file Adaptive Server に接続するときに検索する interfaces ファイルの名 前とロケーションを指定します。 -r resource_file 指定されたリソース・ファイルを実行します。 -v srvbuildres のバージョン番号と版権メッセージを表示して、終了し ます。 使用法 • • パーミッション SYBASE 環境変数を Sybase Adaptive Server の現在のバージョンのロ ケーションに設定してから、srvbuildres を使用してください。 srvbuildres ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 srvbuildres を使用できるのは、Sybase システム管理者だけです。 参照 ユーティリティ srvbuild 201 startserver startserver 説明 Adaptive Server か Backup Server、またはその両方を起動します。 構文 startserver [[-f runserverfile] [-m]] ... パラメータ -f runserverfile Adaptive Server または Backup Server を起動するたびにリファレン スとして使用される、runserver ファイルの相対パス名を指定しま す。デフォルトでは、runserver ファイルは RUN_servername とい う名前で現在のディレクトリにあります。同じマシンで別の Adaptive Server を起動する場合、startserver は RUN_servername と いう名前の runserver ファイルを新たに作成します。 -m シングルユーザ・モードで Adaptive Server を起動し、1 人のシス テム管理者だけがログインできるようにして、allow updates to system tables 設定パラメータをオンにします。このモードは、 master データベースをリストアする場合に使用してください。シス テム管理者は、sp_dboption の dbo use only パラメータを使用する ことによって、バルク・コピーやデータ・ディクショナリの使用な ど、複数のプロセスを必要とするシステム管理アクティビティを実 行できます。startserver は、通常、1 つのノードにサーバを 1 つし か起動しません。 -m パラメータは、m_RUNSERVER ファイルを作成し、既存の m_RUNSERVER ファイルを上書きします。 例 startserver 現在のディレクトリにある RUN_servername という名前の runserver ファイルから SYBASE という名前の Adaptive Server を起動します。 startserver -f RUN_MYSERVER -f RUN_SYB_BACKUP MYSERVER という名前の Adaptive Server と、SYB_BACKUP という 名前の Backup Server を起動します。 startserver -f RUN_SYB_BACKUP SYB_BACKUP という名前の Backup Server だけを起動します。 使用法 202 • startserver は、runserver ファイルの情報を使用して、Adaptive Server または Backup Server を起動します。マスタ・デバイスは、 Adaptive Server を起動したユーザが書き込み可能でなければなり ません。 第5章 ユーティリティ・コマンド・リファレンス startserver コマンドは、サーバを起動したディレクトリに Adaptive Server エラー・ログ・ファイル (errorlog) を作成して、 runserver ファイルの Adaptive Server 実行ラインの -e パラメータ の一部として、この情報を付け加えます。同じマシンで Adaptive Server をもう 1 つ起動すると、errorlog_servername という名前の エラー・ログ・ファイルが作成されて、この情報がそのサーバの runserver ファイルに付け加えられます。ユーザは指定した runserver ファイルに対する実行パーミッションを持っていなけ ればなりません。 • 2 番目の例のように、複数の runserver ファイルを指定して、複 数のサーバを起動することができます。その場合は、各 -f runserverfile のあとに -m を指定します。 • Adaptive Server の実行環境は、config ファイルの値によって決定 されます。設定パラメータを参照したり、変更したりするには、 sp_configure システム・プロシージャを実行するか、config ファ イルを編集します。 • Adaptive Server の整合性を維持するには、startserver 実行ファイ ルと runserver ファイルに適切なオペレーティング・システム保 護を設定することが重要です。 runserver ファイル • インストール中に srvbuild によって作成される runserver ファイ ルには、Adaptive Server を起動する dataserver コマンド、または Backup Server を起動する backupserver コマンドがあります。デ フォルトでは、runserver ファイルは現在のディレクトリにあり、 名前は RUN_servername となります。この runserver ファイルを 開き、これらのコマンドのオプションやパラメータを変更するこ とができます。次に、2 つの runserver ファイル例を示します。 MYSERVER サーバの runserver ファイル #!/bin/sh # # Adaptive Server Information: # name: /MYSERVER # master device: /remote/Masters/myserver_dat # master device size: 10752 # errorlog: /remote/serverdev/install/errorlog # interfaces: /remote/serverdev/interfaces # # /remote/serverdev/bin/dataserver -d/remote/Masters/myserver_dat \ -sMYSERVER -e/remote/serverdev/install/MYSERVER_errorlog \ -i/remote/serverdev & 203 startserver SYB_BACKUP Backup Server の runserver ファイル #!/bin/sh # # Backup Server Information: # name: SYB_BACKUP # errorlog: /remote/serverdev/install/backup.log # interfaces: /remote/serverdev/interfaces # location of multibuf: /remote/serverdev/bin/sybmultbuf # language: us_english # character set: iso_1 # tape configuration file: /remote/serverdev/backup_tape.cfg # # /remote/serverdev/bin/backupserver -SSYB_BACKUP \ -e/remote/serverdev/install/backup.log \ -I/remote/serverdev/interfaces \ -M/remote/serverdev/bin/sybmultbuf -Lus_english -Jiso_1 \ -c/remote/serverdev/backup_tape.cfg 参照 コマンド ユーティリティ 204 disk mirror, disk remirror, disk unmirror backupserver, dataserver 第5章 ユーティリティ・コマンド・リファレンス sybload 説明 Sybase 製品を配布メディアからアップロードし、Sybase インストー ル・ディレクトリを作成します。 構文 sybload [-D] パラメータ -D 配布メディアから Adaptive Server をアップロードします。 使用法 • sybload はコマンド・ライン・ユーティリティです。 • SYBASE 環境変数を Adaptive Server の現在のバージョンのロ ケーションに設定してから、sybload を使用してください。 • sybload は、UNIX シェルに対して rsh コマンドを発行し、リモー トで製品をアンロードします。ホスト・システムのプログラムの デフォルト・バージョンが /bin/rsh であることを確認してくださ い。そうでない場合 sybload は失敗します。 • Adaptive Server のインストールの詳細については、使用している プラットフォームに合った Sybase の『インストール・ガイド』 と、使用しているオペレーティング・システムの『管理ガイド』 を参照してください。 • sybload を使用して CD-ROM からリモート・インストールを行う ことはできません。CD-ROM からリモートでインストールする 方法については、使用しているプラットフォーム用の『インス トール・ガイド』を参照してください。 • sybload は、インストール情報を入力するよう要求します。表 5-14 に、入力する必要がある情報をまとめてあります。 205 sybload 表 5-14: テープ・インストール用 sybload プロンプトの要約 プロンプト Sybase ディレクトリ 値 現在のディレクトリが Sybase インストール・ディレク トリであることを確認するか、正しいディレクトリ・ パスを指定する。 ローカルまたは リモート・イン ストール 次のどちらかを入力する。 ノンリワイン ディング・テー プ・ドライブの 名前 カスタマ・オー ソライゼーショ ン文字列 (CAS) Sybase 製品 "L" - ローカル "R" - リモート・インストール Sybase ソフトウェアのロード元になっているデバイス の名前を入力する。この名前はノンリワインディング 名にする。 ソフトウェア・パッケージに記載されている製品の使 用を可能にする文字列を入力する。 sybload メニューからインストールする製品を選択する。 - インストールする各製品の番号を入力する。 - 各番号を入力後、[Return] キーを押す。 - 選択が終わったら、[Return] キーを 2 回押してブラ ンク行を入力する。 製品確認 sybload ユーティリティによって、選択した製品の一覧 が表示される。次のように入力する。 "y" - 正しい "q" - 終了 もう一度メニューを表示し、製品を選択しなおす場合 は、Any_other_character を入力する。 • 206 sybload の詳細については、 『Adaptive Server Enterprise インス トール・ガイド UNIX 版』を参照してください。 第5章 ユーティリティ・コマンド・リファレンス sybsetup 説明 X11/Motif ベースの GUI ( グラフィカル・ユーザ・インタフェース ) を使用して、単一のロケーションから Adaptive Server をインストー ルしたり、設定したりします。 構文 sybsetup [-c devicename] [-t devicename] [-l local_source] [-r remote_source] パラメータ -c devicename Adaptive Server 配布メディアの CD-ROM ディレクトリ・パスを指 定します。 -t devicename Adaptive Server 配布メディアの テープ・デバイス・ディレクト リ・パスを指定します。 -l local_source ローカル・テープ・デバイスのパス名を指定します。 -r remote_source リモート・テープ・デバイスのパス名を指定します。 使用法 • • パーミッション sybsetup を使用する前に、次のことを行ってください。 • SYBASE 環境変数を Adaptive Server の現在のロケーションに 設定します。 • DISPLAY 環境変数を設定します。 sybsetup ユーティリティ・プログラムの詳細については、 『Adaptive Server Enterprise インストール・ガイド UNIX 版』を 参照してください。 sybsetup を使用できるのは、Sybase システム管理者だけです。 207 sybsetup 208 索引 記号 !! ( 感嘆符 ) オペレーティング・システム・コマンド・プリフィクス (isql) 172 > ( リダイレクト・アウト )、isql 9 " " ( 特殊文字を囲む ) 86 \ ( バックスラッシュ ) エスケープ、特殊文字 86 \ ( バックスラッシュ ) データ・フィールド・ターミネータ、対話型 bcp 37 数字 \0 (null) 文字ターミネータ、対話型 bcp 37 A Adaptive Server アップグレード (sqlupgrade) 198 アップグレード、リソース・ファイル (sqlupgraderes) インストール (sybsetup) 207 実行 (dataserver) 138 設定 (sybsetup) 207 ロールバック、プロセス 53 allow_dup_row オプション、create index、bcp 58 ascii_7 文字セット bcp の互換性 102 defncopy 142 ASCII フォーマット、bcp 30 199 B Backup Server 91 「backupserver ユーティリティ・コマンド」参照 backupserver ユーティリティ・コマンド 91 interfaces ファイル 95 interfaces ファイル、名前とロケーション 91 LC_ALL 環境変数 92 91 209 索引 エラー・メッセージ 95 エラー・ログ・ファイル 91 起動、サーバ 95 言語、デフォルト 92 サーバ接続、個数 91 サーバ名、指定 91 定義 91 トレース・フラグ 95 必要なパーミッション 95 フル・パス名、指定 92 文字セット、デフォルト 92 -bbatch_size パラメータ 53 bcp ユーティリティ・コマンド 61, 96, 113 allow_dup_row オプション、create index 58 ascii_7 文字セット、互換性 102 ASCII フォーマット 30 -bbatch_size パラメータ 53 drop index、使用 108 drop trigger、使用 108 dump database 61, 107 dump transaction 107 IDENTITY カラム 27 insert 61 load database 61 load transaction 61 non-iso_1 データ・ファイル 52 select into/bulkcopy/pllsort 18, 108 sp_dboption 18, 107 インデックスとトリガ、削除 19 インデックスの作成 58 エラー、データ変換 57 エラー・ファイル 57 応答 108 オペレーティング・システムによる違い 110 記憶タイプ 112 警告、ネイティブ・フォーマットの使用について 言語、使用、代替 52 向上、パフォーマンス、オペレーション 56 高速バージョン 16, 107 高速バージョン、データのリカバリ性 18 コピー・アウト、データ 44, 47, 55 コピー・イン、データ 19, 22, 48, 51 コピー・イン、バッチ、テーブルのロー 53 210 98 索引 最高速度、有効化 60 システム・データ・フォーマット (SDF) 出力 44 使用例 104 設定パラメータ 56 説明 12 速度、インデックスとトリガ 18 速度、モード 16 対話型モード 32, 38 他の Adaptive Server ユーティリティ 61 ターミネータ 13 定義 96 低速バージョン 16, 107 低速バージョンとデッドロック、インデックス・ページ テーブルのデフォルト、コピー、データ 60 転送、データ、プログラム間 13 データ型 112 データ記憶サイズ 110 データ転送、準備 15 データに必要な領域 19 データの整合性 60 デフォルト、カラムとデータ型 60 デフォルト値、データ 60 特殊文字、処理 103 トリガ、起動されない、ターゲット・テーブル 18 トリガとデータのコピー 60 ネイティブ・フォーマット・オプション 30 バイナリ形式 13 バッチ・オペレーション 53 バッチ・サイズ、設定 100 パスワードの暗号化 99 パフォーマンス速度 108 パフォーマンスの問題 17, 28, 60 非対話型 30 必要なパーミッション 14, 113 ファイル記憶タイプ 109 フィールド・ターミネータ 31, 110 フィールド長 30 フォーマット・ファイル 39, 43 分割されたテーブル 20, 29, 54 プレフィクス長 109 プロンプト 108, 109 プロンプト、応答、 「対話型 bcp」参照 31, 32 21 211 索引 ページ割り付け、増加 22 文字セット、デフォルト 101 文字データ型以外のデータ型から文字データ型への変換、デフォルトのフィールド長 文字フォーマット 30 文字フォーマット、使用可能 13 文字フォーマット、デフォルト 31 ユニークな IDENTITY カラム値 28 リカバリ性の向上、コピー・イン、データ 53 ルール、コピー、データ 60 ロー・ターミネータ 31 ロールバック、プロセス 53 buildmaster ユーティリティ・コマンド 134 master データベース 134 model データベース 134 定義 134 必要なパーミッション 136 例 135 C charset ユーティリティ・コマンド 137 設定 137 定義 137 必要なパーミッション 137 char データ型、bcp 30 create index コマンド、bcp、重複ロー 58 D dataserver ユーティリティ・コマンド 138 定義 138 パスワード、新しく生成 140 必要なパーミッション 140 default network packet size 設定パラメータ 56 defncopy ユーティリティ・コマンド 141, 147 ascii_7 文字セット 142 Report Workbench、非互換性 141 暗号化されたテキスト 145 失敗、コメントが長いため 145 定義 141 パスワードとクラッシュ 141 212 36 索引 必要なパーミッション 145 例 144 DISPLAY 環境変数 設定、dsedit 64 drop index コマンド、bcp 108 drop trigger コマンド、bcp 108 dscp ユーティリティ・コマンド 153 exit コマンド 82 quit コマンド 82 エントリ、新規作成、コピー 79 コマンド一覧 82 サーバ・エントリ、コピー 79 サーバ・エントリ、削除 81 サーバ・エントリ、追加 77 サーバ・エントリの内容、表示 81 サーバ・エントリ、表示 80 サーバ・エントリ、変更 78 サーバの属性 76 実行 74 セッション、オープン 74 セッション間でのコピー 79 セッション、クローズ 75 セッション、コピー、別のセッション 80 セッション、表示 74 定義 73, 153 必要なパーミッション 153 ヘルプ 74, 83 例 153 dsedit に関するトラブルシューティング 70 dsedit ユーティリティ・コマンド 155 [Directory Service Session] 画面 65 DISPLAY 環境変数 64 [Select a Directory Service] 画面 64 起動しない 70 サーバ・エントリ、コピー 67 サーバ・エントリ、追加 67 サーバ・エントリ、追加、変更、削除ができない サーバ・エントリ、変更 67 実行 64 セッション、オープン 65 セッション、クローズ 65 説明 64 70 213 索引 定義 155 トラブルシューティング 63, 70 ネットワーク・トランスポート、追加 67 ネットワーク・トランスポート、編集 68 必要なパーミッション 64, 155 リモート・マシン、実行 64 DSLISTEN 環境変数 backupserver 95 dump database コマンド bcp 61 高速バージョン、bcp 107 dump transaction コマンド bcp 61 エラー・メッセージ、dump database の使用を指示 高速バージョン、bcp 107 E exit コマンド dscp 82 isql 2 H help コマンド (dscp) 74, 83 I IDENTITY カラム bcp 28 パラレル bcp 27, 28 ignore_dup_key オプション、create index、bcp 58 image データ型 対話型 bcp 34 insert コマンド バルク・コピー、比較 61 installjava (UNIX) ユーティリティ・コマンド 157, 160 interfaces ファイル backupserver 95 backupserver、指定、名前とロケーション 91 dscp セッション、オープン 74 214 18 索引 dscp、表示および編集 153 dsedit、表示および編集、GUI 155 dsedit、編集 65 オープン、編集 64 iso_1 文字セット 52 isql 9 isql ユーティリティ・コマンド 165 > ( リダイレクト・アウト ) 記号 9 < ( リダイレクト・イン ) 記号 9 exit コマンド 2 quit コマンド 2 reset コマンド 4 Transact-SQL、isql での使用 2 カラム・セパレータ文字 3 行番号、削除 3, 9 クエリ・バッファ、リセット 4 クエリ、編集 5 コマンド・ターミネータ 3 コマンド・ターミネータ、変更 6 コマンド・ターミネータ、リセット 167 定義 165 統計値 7 統計値オプションとコマンド・ターミネータ 入力のエコー 9 入力ミスの訂正 4 ネットワーク・パケット・サイズ、指定 8 ネットワーク・パケット・サイズ、設定 8 パケット・サイズ、設定 8 文の最大サイズ 3 ホスト・ファイル、読み込み 9 例 171 7 J Java-SQL ユーティリティ installjava (UNIX) 157, 160 L langinstall ユーティリティ・コマンド 定義 184 184, 186 215 索引 必要なパーミッション 186 LANG 環境変数、backupserver 92 LC_ALL 環境変数、backupserver 92 load database コマンドと bcp 61 load transaction コマンド bcp 61 M master データベース buildmaster、作成 134 max network packet size 設定パラメータ model データベース 作成、buildmaster 134 56 N null 値 57 対話型 bcp 34 null 文字ターミネータ (\0)、対話型 bcp 37 O optdiag ユーティリティ・コマンド 定義 187 必要なパーミッション 193 例 191 187 Q quit コマンド dscp 82 isql 2 R Report Workbench、defncopy との非互換性 reset コマンド (isql) 4 216 141 索引 S [Select a Directory Service] 画面 64 select into/bulkcopy/pllsort データベース・オプション bcp 18, 108 select into コマンド、バルク・コピーとの比較 61 [Server Entry Editor] ウィンドウ 65 showserver ユーティリティ・コマンド 194 定義 194 例 194 sp_dboption システム・プロシージャと bcp 18, 107 SPX/IPX アドレス、interfaces エントリ 68 sqllocres ユーティリティ・コマンド 197 定義 197 必要なパーミッション 197 sqlloc ユーティリティ・コマンド 195, 196 定義 195 必要なパーミッション 195 sqlupgraderes ユーティリティ・コマンド 199 定義 199 必要なパーミッション 199 sqlupgrade ユーティリティ・コマンド 198 定義 198 必要なパーミッション 198 SQL パーサ・ユーティリティ 「isql ユーティリティ・コマンド」参照 165 srvbuildres ユーティリティ・コマンド 201 定義 201 必要なパーミッション 201 srvbuild ユーティリティ・コマンド 200 定義 200 必要なパーミッション 200 startserver ユーティリティ・コマンド 202 backupserver 95 runserver ファイル、例 203 定義 202 例 202 sybload ユーティリティ・コマンド 205 定義 205 必要なパーミッション 206 sybmultbuf、起動、Backup Server 92 sybsetup ユーティリティ・コマンド 207 定義 207 必要なパーミッション 207 217 索引 T TCP/IP アドレス、interfaces エントリ 68 tempdb データベース、buildmaster による作成 text データ型 対話型 bcp 34 Transact-SQL 使用、isql 2 134 あ アップグレード、Adaptive Server 198 「sqlupgrade ユーティリティ・コマンド」参照 198 アップグレード、Adaptive Server、リソース・ファイル 199 「sqlupgraderes ユーティリティ・コマンド」参照 199 アップロード、Sybase 製品 205 「sybload ユーティリティ・コマンド」参照 205 アプリケーション・プログラム、コピー、データ 44 暗号化された隠しテキスト 145 い 意味 backupserver ユーティリティ・コマンド 91 bcp ユーティリティ・コマンド 96 印刷できない文字、ホスト・ファイル 35 インストール Adaptive Server (sybsetup) 207 言語、GUI (sqlloc) 195, 196 言語 (sqllocres) 197 言語、新規 (langinstall) 184, 186 ソート順、GUI (sqlloc) 195, 196 ソート順 (sqllocres) 197 文字セット、GUI (sqlloc) 195, 196 文字セット (sqllocres) 197 インデックス bcp、削除、使用前 19 速度低下、bcp 18 インポート、データ 「コピー・イン、データ、対話型 bcp」参照 48 引用符 (" ")、特殊文字を囲む 86 218 索引 え エクスポート、データ 「コピー・アウト、データ、対話型 bcp」参照 44 エラー エラー、保存、コピー・アウト中 59 エラー、保存、コピー・イン中 57 データ変換 57, 59 エラー・ファイル bcp 57, 59 コピー・アウト 59 エラー・メッセージ backupserver 95 dsedit と X 画面 70 dump database、使用、dump transaction 18 select into/bulkcopy/pllsort、高速 bcp、インデックスやトリガを持たないテーブル エラー・ログ・ファイル backupserver 91 18 お 応答、bcp 108 オープン セッション、dscp 74 セッション、dsedit 65 オペレーティング・システム コマンド・プリフィクス (!!) (isql) 172 数値データ型のフォーマット 30 文字データ型以外のデータ型のフォーマット 34 オペレーティング・システム・ファイル 必要なパーミッション、コピー、テーブル 14 か 改行ターミネータ (\n) bcp 31 対話型 bcp 37 カラム null 57 固定長と可変長 34 セパレータ文字 (isql) 3 データ型サイズ 35 デフォルト値、bcp 60 219 索引 カラム精度、記憶フォーマット numeric または decimal 43 カラムの位取り、記憶フォーマット numeric または decimal 43 環境変数 DSLISTEN (backupserver) 95 LANG (backupserver) 92 LC_ALL (backupserver) 92 感嘆符 (!!)、オペレーティング・システム・コマンド・プリフィクス (isql) カンマ区切り出力 44, 46 き 記憶タイプ、bcp での使用 112 起動 サーバ (startserver) 202 行番号、削除、isql 3, 9 く クイック・リファレンス dscp コマンド 82 クエリ・バッファ、リセット クローズ、セッション dscp 75 dsedit 65 4 け 警告 bcp、使用、ネイティブ・フォーマット 98 defncopy の失敗、コメントが長いため 145 言語 インストールおよび変更、GUI (sqlloc) 196 インストールおよび変更 (sqllocres) 197 インストール、新規 (langinstall) 184, 186 インストール、変更、GUI (sqlloc) 195 代替言語、bcp 52 こ 高速バージョン、bcp 16, 107 コピー・イン、データ 19 220 172 索引 データのリカバリ性 18 構築、マスタ・デバイス 134 「buildmaster ユーティリティ・コマンド」参照 構文の表記規則 xii, xiii 個数 go コマンド、実行 172 サーバ接続、backupserver 91 固定長フィールド 44 コピー 新しいエントリ、dscp 79 サーバ・エントリ、dscp 79 サーバ・エントリ、dsedit 67 セッション間、dscp 79 別のセッション、dscp 80 コピー・アウト、データ、対話型 bcp 44, 47 text データと image データ 55 エラー・ファイル 59 固定長フィールド 44 他のソフトウェア 44 デリミタ 45 コピー・イン、データ 使用手順、高速バージョンの bcp 19 バッチ・オペレーション 53 パラレル bcp、稼働条件 23, 28 分割されたテーブル 21 分割、ランダムな使用 21 リカバリ性の向上、ロール・バック後 53 コピー・イン、データ、対話型 bcp 48, 51 エラー・ファイル 59 データ型の互換性、失敗 50 デリミタ 50 フィールド長 48 コピー、定義 141, 147 コマンド・ターミネータ (isql) 3 統計値オプションとの関係 7 134 さ サイズ text データまたは image データ データ記憶領域、bcp 110 パケット・サイズ 55 55 221 索引 削除 サーバ・エントリ (dscp) 81 作成 tempdb データベース、buildmaster 134 新規サーバ (srvbuild) 200 新規サーバ、リソース・ファイルを使用 (srvbuildres) 201 サーバ backupserver、起動 95 backupserver、指定、サーバ名 91 startserver、起動 202 startserver ユーティリティ・コマンド 202 速度のモード、bcp 16 サーバ・エントリ dscp、表示 80 コピー、dsedit 67 サーバ・エントリ、追加 67 内容、表示、dscp 81 変更、dsedit 67 サーバ・オブジェクトのバーション、サーバの属性 (dscp) 76 サーバ・カラム 順序 42 名前 42 サーバ・サービス、サーバの属性 (dscp) 76 サーバ・ステータス、サーバの属性 (dscp) 76 サーバ接続 backupserver、接続数 91 サーバの属性 (dscp) 76 サーバ名、サーバの属性 (dscp) 76 し システム・データ・フォーマット (SDF) 出力、bcp 44 システム・プロシージャ (sp_dboption) 18 指定、サーバ名、backupserver 91 指定、フル・パス名、Backup Server 92 出力フォーマット、データ 「コピー・アウト、データ、対話型 bcp」参照 44 新規サーバ、作成 200 「srvbuild ユーティリティ・コマンド」参照 200 新規サーバ、作成、リソース・ファイルを使用 201 「srvbuildres ユーティリティ・コマンド」参照 201 シンボル、フィールド・ターミネータ (bcp) 37 実行 222 索引 dscp ユーティリティ 74 dsedit ユーティリティ・コマンド 64 実行、Adaptive Server 138 「dataserver ユーティリティ・コマンド」参照 138 す 数値データ型 bcp、変換、文字記憶タイプ 35 オペレーティング・システム・フォーマット カラムの位取り 43 カラムの精度 43 ストアド・プロシージャ コピー、defncopy 141 30 せ セキュリティ、注意 86 セキュリティ・メカニズム、サーバの属性 (dscp) セッション 表示 (dscp) 74 設定 Adaptive Server (sybsetup) 207 77 そ ソート順 インストールおよび変更、GUI (sqlloc) 195, 196 インストールおよび変更 (sqllocres) 197 た 対話型 bcp 32, 38 image データ型、デフォルト 34 null 値 34 null、見えない文字ターミネータ (\0) 暗黙の変換、データ型 32, 34 記憶長 35 記憶領域の長さ 37 コピー・アウト、データ 44, 47 37 223 索引 コピー・イン、データ 48, 51 コピー、データ、他のソフトウェア 32 タブ・データ・フィールド・ターミネータ (\t) 37 ターミネータ、改行 (\n) 37 ターミネータ、表形式データの準備 37 ターミネータ、フィールドとロー 37, 38 テキスト・データ、コピー、デフォルト 34 データへの埋め込み、スペース 35 デフォルト、プロンプト 32, 38 バイナリ・データ、デフォルト 34 バックスラッシュ・ターミネータ (\) 37 ファイル記憶タイプ 32, 34 フィールド・ターミネータ 37, 38 フィールド長 35, 37 フィールド、プレフィクス長 34, 35 復帰改行データ・フィールド・ターミネータ (\r) 37 文字フォーマット・ファイル、ターミネータ 37 ロー・ターミネータ 37, 38 対話型 SQL パーサ 165 「isql ユーティリティ・コマンド」参照 165 タブ・データ・フィールド・ターミネータ (\t)、対話型 bcp ターミネータ (bcp) 42 他のプログラム、使用 37 定義 13 フィールドとロー 37, 38 変更 31 37 ち 注意 ascii_7 文字セット、互換性 142 ascii_7 文字セット、互換性、bcp 102 bcp とパフォーマンス速度 108 defncopy と Report Workbench 141 null ターミネータとターミネータなし 38 select into/bulkcopy/pllsort、コピー・アウト、データ、bcp 18 暗号化された隠しテキスト 145 オペレーティング・システム、違い、bcpbcp ユーティリティ・コマンド コピー・イン、データ、ビュー、bcp 13 セキュリティ 86 低速バージョンの bcp とデッドロック 21 224 110 索引 特殊文字、bcp での処理 103 トリガ、bcp で起動されない、ターゲット・テーブル バッチ・サイズ、設定、bcp 100 パスワード、使用 86 18 つ 追加 サーバ・エントリ、dscp 77 サーバ・エントリ、dsedit 67 ネットワーク・トランスポート・アドレス、dsedit 67 て 定義 buildmaster ユーティリティ・コマンド 134 charset ユーティリティ・コマンド 137 dataserver ユーティリティ・コマンド 138 defncopy ユーティリティ・コマンド 141 dscp ユーティリティ・コマンド 153 dsedit ユーティリティ・コマンド 155 isql ユーティリティ・コマンド 165 optdiag ユーティリティ・コマンド 187 showserver ユーティリティ・コマンド 194 sqllocres ユーティリティ・コマンド 197 sqlloc ユーティリティ・コマンド 195 sqlupgraderes ユーティリティ・コマンド 199 sqlupgrade ユーティリティ・コマンド 198 srvbuildres ユーティリティ・コマンド 201 srvbuild ユーティリティ・コマンド 200 startserver ユーティリティ・コマンド 202 sybload ユーティリティ・コマンド 205 sybsetup ユーティリティ・コマンド 207 コピー、 「defncopy ユーティリティ・コマンド」参照 141 低速バージョン、bcp 16, 107 デッドロック、インデックス・ページ 21 テーブル bcp プロンプト 109 bcp 文字セット、デフォルト 101 必要なパーミッション、オペレーティング・システム・ファイルへのコピー 必要なパーミッション、コピー、データ 14 14 225 索引 ユーティリティ・コマンド 86 テーブルのロー コピー・イン、バッチ 53 長さ 25 転送、データ、プログラム、bcp を使用 13 データ 移動、Adaptive Server コマンド 61 インポートとエクスポート、bcp 12 埋め込み、スペース、対話型 bcp 35 解析、 「フィールド・ターミネータ」参照 31 転送、別のプログラム、bcp を使用 13 必要なパーミッション、テーブルへのコピー 14 変換エラー 57, 59 変更、Adaptive Server コマンド 61 リカバリ性 18 データ型 bcp、使用 112 bcp ファイル記憶タイプ 32, 34 bcp フォーマット・ファイル 39 char 30 暗黙の変換 32, 34 記憶領域 (SYB) 41 コピーと互換性 50 デフォルト値、bcp 60 フィールド長、対話型 bcp 33, 38 文字データ型以外のデータ型から文字データ型への変換、デフォルトのフィールド長、bcp データへのスペースの埋め込み、bcp 37 データベース・オブジェクト コピー、bcp を使用 96, 113 データベース管理システム、その他 44 データベース、コピー、bcp 61 デフォルト bcp データの変換 35 bcp プロンプト 32, 38 select into/bulkcopy/pllsort オプション設定、新規データベース 19 言語、backupserver 92 コピー、defncopy 141 テーブルへのコピー、データのデフォルトを使用 60 プロンプト、対話型 bcp 32, 38 文字セット、backupserver 92 文字セット、bcp 101 デリミタ コピー・アウト、データ 45 226 36 索引 コピー・イン、データ 50 と 統計値 isql 7 表示 (optdiag) 187 ロード、更新された統計 (optdiag) 187 特殊文字 bcp、処理 103 ユーティリティ・コマンド、使用 86 トランスポート・アドレス、サーバの属性 (dscp) 77 トランスポートのタイプ、サーバの属性 (dscp) 76 トリガ bcp、削除、使用前 19 コピー、defncopy 141 速度低下、bcp 18 テーブル、コピー、データ 60 トレース・フラグと backupserver 95 に 入力のエコー (isql) 9 ね ネットワーク・トランスポート 66 ネットワーク・トランスポート・アドレス dsedit、編集 68 追加、dsedit 67 ネットワーク・パケット・サイズ isql、指定 8 は バイナリ・データ bcp 13 デフォルト、対話型 bcp 34 バックアップ、バルク・コピーとの比較 バックスラッシュ (\) エスケープ、特殊文字 86 61 227 索引 ターミネータ、対話型 bcp 37 バッファ、クエリ 4 バルク・コピー・プロセス 61, 96, 113 「bcp ユーティリティ・コマンド」参照 96 番号 行番号、isql からの削除 3, 9 パケット・サイズ、ネットワーク bcp、指定 55 isql、指定 8 指定、isql 8 パスワード bcp の暗号化 99 defncopy 141 新規、生成 140 注意、使用について 86 パフォーマンス bcp の問題 17, 28, 60 isql ネットワーク・パケット・サイズ 8 バルク・コピーとパケット・サイズ 56 パラレル bcp IDENTITY カラム 27, 28 構文 26 コピー、特定の分割 23, 27 別の使用方法 25, 28 ひ 必要なパーミッション backupserver ユーティリティ・コマンド 95 bcp ユーティリティ・コマンド 14, 113 buildmaster ユーティリティ・コマンド 136 charset ユーティリティ・コマンド 137 dataserver ユーティリティ・コマンド 140 defncopy ユーティリティ・コマンド 145 dscp ユーティリティ・コマンド 153 dsedit、必要なパーミッション 64 dsedit ユーティリティ・コマンド 155 langinstall ユーティリティ・コマンド 186 optdiag ユーティリティ・コマンド 193 sqllocres ユーティリティ・コマンド 197 sqlloc ユーティリティ・コマンド 195 sqlupgraderes ユーティリティ・コマンド 199 228 索引 sqlupgrade ユーティリティ・コマンド 198 srvbuildres ユーティリティ・コマンド 201 srvbuild ユーティリティ・コマンド 200 sybload ユーティリティ・コマンド 206 sybsetup ユーティリティ・コマンド 207 オペレーティング・システム・ファイル、コピー、テーブル テーブル、コピー、データ 14 必要な領域と bcp の手順 19 表記規則、構文 xii, xiii 表形式の出力 44, 46 表形式のデータ、コピー 38 表示、サーバ 194 「showserver ユーティリティ・コマンド」参照 194 ビュー、コピー、defncopy 141 14 ふ ファイル 「フォーマット・ファイル、bcp」参照 39 エラー (bcp) 57 フィールド・ターミネータ 31 bcp 110 対話型 bcp 37, 38 フィールド長 コピー・イン 48 対話型 bcp 35, 37 プレフィクス長、整数値 41 フォーマット・ファイル、bcp 39, 43 カラムの位取り 43 カラムの精度 43 カラム番号 40 サーバ・カラム名 42 サーバのカラム順 42 使用されるフォーマット 39 使用される要素 39 ターミネータ 42 バージョン番号 40 プレフィクス長、整数値 41 ホスト・ファイルのカラム順 40 ホスト・ファイルのデータ型の記憶領域フォーマット (SYB) ホスト・ファイルのデータ長 42 レコード数 40 41 229 索引 保存 39 フォント表記規則 xii, xiii 復帰改行データ・フィールド・ターミネータ (\r)、対話型 bcp フル・パス名、指定 Backup Server 92 分割されたテーブル、bcp 20, 29 コピー、データ、方法 21 コピー、データ、ランダム 21 ページ割り付け、増加 22 プレフィクス長 41 プレフィクス長、bcp 109 プレフィクス・フィールド長、対話型 bcp 34, 35 プロンプト bcp 108 bcp、「対話型 bcp」参照 32 プロンプト、bcp ユーティリティ・コマンド 109 へ 変更 言語、GUI (sqlloc) 195, 196 言語 (sqllocres) 197 サーバ・エントリ (dscp) 78 サーバ・エントリ、dsedit 67 ソート順、GUI (sqlloc) 195, 196 ソート順 (sqllocres) 197 文字セット、GUI (sqlloc) 195, 196 文字セット (sqllocres) 197 編集 interfaces ファイル 64, 65 ネットワーク・トランスポート・アドレス、dsedit ほ ホスト・ファイル isql と読み込み 9 カラム順 40 対話型 bcp のネイティブ・フォーマット 35 データ型の記憶領域フォーマット (SYB) 41 データ長 42 保存 エラー、コピー・アウト・オペレーション中 59 230 68 37 索引 エラー、コピー・イン・オペレーション中 フォーマット・ファイル (bcp) 39 57 ま マスタ・デバイス、構築 134 「buildmaster ユーティリティ・コマンド」参照 134 も 文字セット backupserver、デフォルト 92 bcp、デフォルト 101 インストールおよび変更、GUI (sqlloc) 195, 196 インストールおよび変更 (sqllocres) 197 プラットフォームのデフォルト 52 変換、文字データ型以外のデータ 35 ロード、charset 137 文字データ型以外のデータ型、オペレーティング・システム・フォーマット 文字フォーマット bcp 13 ターミネータ 37 デフォルト、bcp 31 34 ゆ ユーティリティ・コマンド コマンド一覧 86 特殊文字、使用 86 ユーティリティ、他の Adaptive Server ユーティリティ、bcp 61 り リダイレクト・アウト記号 (>)、isql 9 リダイレクト・イン記号 (<)、isql 9 リモート・マシン 64 リモート・マシン、dsedit ユーティリティを使用 64 231 索引 る ルール defncopy、コピー 141 テーブル、コピー、データ 60 れ 例 bcp ユーティリティ・コマンド 104 buildmaster ユーティリティ・コマンド 135 defncopy ユーティリティ・コマンド 144 dscp ユーティリティ・コマンド 153 isql ユーティリティ・コマンド 171 optdiag ユーティリティ・コマンド 191 showserver ユーティリティ・コマンド 194 startserver ユーティリティ・コマンド 202, 203 ろ ロー、bcp、不正なテーブル 59 ログが記録されないトランザクション 18 ロケーション、backupserver エラー・ログ・ファイル ロー・ターミネータ bcp 31 対話型 bcp 37, 38 ロー、テーブル 長さ 25 バルク・コピー、失敗 53 ロード、文字セット 137 「charset ユーティリティ・コマンド」参照 137 ロールバック・プロセス 53 232 91
© Copyright 2025 ExpyDoc