bcp - Sybase

ユーティリティ・プログラム
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