...

IBM Informix DB-Access ユーザーズ ガイド (日本語版) (PDF:1.3MB)

by user

on
Category: Documents
79

views

Report

Comments

Transcript

IBM Informix DB-Access ユーザーズ ガイド (日本語版) (PDF:1.3MB)
IBM Informix
򔻐򗗠򙳰
DB-Access ユーザーズ ガイド
バージョン 9.4
GB88-8627-00
(英文原典:G251-1239-00)
IBM Informix
򔻐򗗠򙳰
DB-Access ユーザーズ ガイド
バージョン 9.4
GB88-8627-00
(英文原典:G251-1239-00)
お願い
本書および本書で紹介する製品をご使用になる前に、149 ページの『特記事項』に記載されている情報をお読み
ください。
本書には、IBM の専有情報が含まれています。その情報は、使用許諾条件に基づき提供され、著作権により保護されて
います。本書に記載される情報には、いかなる製品の保証も含まれていません。また、本書で提供されるいかなる記述
も、製品保証として解釈すべきではありません。
IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うことのない、自ら適切と信ずる方法で、
使用もしくは配布することができるものとします。
本マニュアルに関するご意見やご感想は、次の URL からお送りください。今後の参考にさせていただきます。
http://www.ibm.com/jp/manuals/main/mail.html
なお、日本 IBM 発行のマニュアルはインターネット経由でもご購入いただけます。詳しくは
http://www.ibm.com/jp/manuals/
の「ご注文について」をご覧ください。
(URL は、変更になる場合があります)
お客様の環境によっては、資料中の円記号がバックスラッシュと表示されたり、バックスラッシュが円記号と表示され
たりする場合があります。
原 典:
G251–1239–00
IBM Informix
DB-Access User’s Guide
Version 9.4
発 行:
日本アイ・ビー・エム株式会社
担 当:
ナショナル・ランゲージ・サポート
第1刷 2003.5
この文書では、平成明朝体™W3、平成明朝体™W9、平成角ゴシック体™W3、平成角ゴシック体™W5、および平成角ゴ
(財)日本規格協会と使用契約を締結し使用しているものです。フォ
シック体™W7を使用しています。この(書体*)は、
ントとして無断複製することは禁止されています。
注* 平成明朝体™W3、平成明朝体™W9、平成角ゴシック体™W3、
平成角ゴシック体™W5、平成角ゴシック体™W7
© Copyright International Business Machines Corporation 1996, 2002. All rights reserved.
© Copyright IBM Japan 2003
目次
序 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
このマニュアルについて . . . . . . . . . . . . . . . . . . . . . . . . . . viii
対象ユーザ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
ソフトウェア依存関係. . . . . . . . . . . . . . . . . . . . . . . . . . . ix
ロケールに関する前提事項 . . . . . . . . . . . . . . . . . . . . . . . . . ix
新機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
マニュアルの規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
文字の表記 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
その他の規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
構文ダイヤグラム . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
コード例の表記 . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
関連マニュアル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
参考文献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
業界標準への準拠 . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
第 1 章 DB-Access 入門 . . . . . . . . . .
DB-Access とは . . . . . . . . . . . . . .
DB-Access の使用 . . . . . . . . . . . . .
DB-Access のセット アップ . . . . . . . . . .
DB-Access のインストール前 . . . . . . . .
環境変数 . . . . . . . . . . . . . . .
デモンストレーション データベースの作成と処理 . .
デモンストレーション データベース . . . . . .
デモンストレーションのインストール . . . . .
コマンド行構文 . . . . . . . . . . . . .
デモンストレーション データベースのアクセス権 . .
SQL コマンド ファイルに対する権限 . . . . . .
DB-Access の起動 . . . . . . . . . . . . .
DB-Access メニュー インターフェイスの開始 . .
コマンド ファイルの実行 . . . . . . . . .
情報スキーマの表示 . . . . . . . . . . .
ANSI 標準準拠のチェック . . . . . . . . .
印刷不能文字に対する XLUF 機能の活動化 . . .
非メニュー モードでの対話式での DB-Access の使用
関連資料 . . . . . . . . . . . . . . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. . 1
. . 1
. . 2
. . 4
. . 4
. . 4
. . 6
. . 6
. . 7
. . 8
. . 10
. . 10
. . 10
. . 11
. . 17
. . 18
. . 18
. . 19
. . 19
. . 22
第 2 章 フルスクリーン メニュー インターフェイスの使用 . . . . . . . . . . . . . . 23
DB-Access ユーザ インターフェイスの使用 . . . . . . . . . . . . . . . . . . . . 23
DB-Access でのキーボードの使用. . . . . . . . . . . . . . . . . . . . . . . 24
メニューの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
応答画面の使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
© Copyright IBM Corp. 1996, 2002
iii
ヘルプ画面の使用 .
エディタ画面の使用
代わりのアプローチ .
データベース レベル
表レベルのタスク .
関連資料 . . . . .
. . .
. . .
. . .
タスク
. . .
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
28
28
28
29
31
32
第 3 章 「Query-language」オプション . . . . . . . . . . . . . . . . . . . . . 35
「SQL」メニューの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
システム エディタの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . 36
「Query-language」オプション . . . . . . . . . . . . . . . . . . . . . . . . . 37
新規の SQL 文の入力 . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
編集キーの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
編集に関する制約事項 . . . . . . . . . . . . . . . . . . . . . . . . . . 40
SQL 文の実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
「Run」オプションでサポートされる文 . . . . . . . . . . . . . . . . . . . . . 41
正常終了の結果の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . 44
エラーが発生した場合の動作 . . . . . . . . . . . . . . . . . . . . . . . . 45
SQL 文の修正 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
問合せ結果の出力先の変更 . . . . . . . . . . . . . . . . . . . . . . . . . . 47
プリンタへの出力の送信 . . . . . . . . . . . . . . . . . . . . . . . . . . 48
ファイルへの出力の送信 . . . . . . . . . . . . . . . . . . . . . . . . . . 48
パイプへの出力の送信 . . . . . . . . . . . . . . . . . . . . . . . . . . 49
既存の SQL 文の選択 . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
現行の SQL 文の保存 . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
表情報の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
SQL 文の削除 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
SPL ルーチンのサポート . . . . . . . . . . . . . . . . . . . . . . . . . . 55
関連資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
第 4 章 「Database」オプション . . . . . . . . . . . . . . . . . . . . . . . 59
「Database」メニュー オプションの選択 . . . . . . . . . . . . . . . . . . . . . 60
データベースの選択 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
使用可能なデータベースのリスト . . . . . . . . . . . . . . . . . . . . . . . 61
データベースの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
データベースの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
DB 領域の指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
ロギングの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
「CREATE DATABASE」メニューの終了 . . . . . . . . . . . . . . . . . . . . 64
データベース情報の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
DB 領域の情報の取得 . . . . . . . . . . . . . . . . . . . . . . . . . . 66
デフォルト以外のロケール情報の取得 . . . . . . . . . . . . . . . . . . . . . 66
ルーチンの情報の取得 . . . . . . . . . . . . . . . . . . . . . . . . . . 67
異なるデータベースの選択 . . . . . . . . . . . . . . . . . . . . . . . . . 69
データベースの削除 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
「DROP DATABASE」画面 . . . . . . . . . . . . . . . . . . . . . . . . 69
iv
IBM Informix: DB-Access ユーザーズ ガイド
データベースを削除するためのユーザの決定の確認 .
データベースのクローズ . . . . . . . . . . .
関連資料 . . . . . . . . . . . . . . . .
第 5 章 「Table」オプション . . . . .
「Table」メニュー . . . . . . . . . .
表の作成または変更 . . . . . . . . .
「CREATE TABLE」画面 . . . . . .
「ALTER TABLE」画面 . . . . . . .
スキーマ エディタの使用 . . . . . .
表への列の追加 (「Add」オプション) . .
表の作成 (「Exit」オプション) . . . .
列の修正 (「Modify」オプション) . . .
列の削除 (「Drop」オプション) . . . .
ストレージの配置とロック (Table_options) .
制約の定義 . . . . . . . . . . .
表情報の表示 . . . . . . . . . . .
列情報の表示 . . . . . . . . . .
インデックス情報の表示 . . . . . .
表レベルのアクセス権の表示 . . . . .
参照アクセス権の表示 . . . . . . .
列制約とデフォルトの表示 . . . . .
トリガの表示 . . . . . . . . . .
フラグメント化情報の表示 . . . . .
表の削除 . . . . . . . . . . . .
関連資料 . . . . . . . . . . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
. 70
. 70
. 72
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. 73
. 74
. 75
. 75
. 76
. 77
. 78
. 84
. 84
. 85
. 85
. 98
. 107
. 110
. 113
. 114
. 114
. 115
. 117
. 118
. 119
. 120
第 6 章 「Connection」オプションと「Session」オプション
「Connection」オプションの選択. . . . . . . . . . .
データベース環境への接続 . . . . . . . . . . .
データベース環境からの接続解除 . . . . . . . . .
トランザクション処理 . . . . . . . . . . . . .
「Session」オプションの選択 . . . . . . . . . . . .
. . . . . . . . . . . . . 123
. . . . . . . . . . . . . 123
. . . . . . . . . . . . . 124
. . . . . . . . . . . . . 127
. . . . . . . . . . . . . 128
. . . . . . . . . . . . . 129
付録 A. SQL 文のオンライン ヘルプの読み方
付録 B. デモンストレーション SQL .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 131
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 133
特記事項 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
商標 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
索引 .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 153
目次
v
vi
IBM Informix: DB-Access ユーザーズ ガイド
序
このマニュアルについて . . . . . . . . . . . . . . . . . . . . . . . . . . viii
対象ユーザ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
ソフトウェア依存関係. . . . . . . . . . . . . . . . . . . . . . . . . . . ix
ロケールに関する前提事項 . . . . . . . . . . . . . . . . . . . . . . . . . ix
新機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
マニュアルの規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
文字の表記 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
その他の規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
コメント . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
機能、製品、プラットフォーム. . . . . . . . . . . . . . . . . . . . . . . xi
構文ダイヤグラム . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi
構文ダイヤグラムの読み方 . . . . . . . . . . . . . . . . . . . . . . . . xiii
キーワードと句読点 . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
識別子と名前 . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
コード例の表記 . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv
関連マニュアル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
参考文献 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
業界標準への準拠 . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii
第 1 章 DB-Access 入門 . . . . . . . .
DB-Access とは . . . . . . . . . . . .
DB-Access の使用 . . . . . . . . . . .
DB-Access のセット アップ . . . . . . . .
DB-Access のインストール前 . . . . . .
環境変数 . . . . . . . . . . . . .
デモンストレーション データベースの作成と処理
デモンストレーション データベース . . . .
デモンストレーションのインストール . . .
コマンド行構文 . . . . . . . . . . .
デモンストレーション データベースのアクセス権
SQL コマンド ファイルに対する権限 . . . .
DB-Access の起動 . . . . . . . . . . .
DB-Access メニュー インターフェイスの開始
メイン メニューの表示 . . . . . . .
その他のメニューまたはオプションの表示 .
メニュー サブオプション . . . . . .
コマンド行構文の例 . . . . . . . .
コマンド ファイルの実行 . . . . . . .
情報スキーマの表示 . . . . . . . . .
ANSI 標準準拠のチェック . . . . . . .
印刷不能文字に対する XLUF 機能の活動化 .
© Copyright IBM Corp. 1996, 2002
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. . 1
. . 1
. . 2
. . 4
. . 4
. . 4
. . 6
. . 6
. . 7
. . 8
. . 10
. . 10
. . 10
. . 11
. . 12
. . 12
. . 14
. . 17
. . 17
. . 18
. . 18
. . 19
vii
非メニュー モードでの対話式での DB-Access の使用
キーボードまたは標準入力装置からの読取り . .
非メニュー モードでのデータベース環境への接続
関連資料 . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
19
19
21
22
ここでは、このマニュアルに記載されている情報の概要を提供し、このマニュアルが使
用している規則について説明します。
このマニュアルについて
このマニュアルでは、DB–Access ユーティリティを使用して、Informix データベース
サーバから情報をアクセス、修正、および取得する方法について説明します。 1 ページ
の『第 1 章 DB-Access 入門』では、Informix データベース サーバと一緒に提供され
た、デモンストレーション データベースの作成と処理について説明します。
重要: DB–Access は、Informix データベース サーバの現行バージョンで使用してくだ
さい。これと異なるデータベース サーバのバージョンで DB–Access を使用する
と、あるバージョンではサポートしているロング識別子を、それをサポートして
いないバージョンで使用する場合などに、矛盾した結果を受け取ることがありま
す。
対象ユーザ
このマニュアルは、以下のユーザを対象としています。
v データベースのユーザ
v データベース管理者
v データベース アプリケーションのプログラマ
このマニュアルの読者は、以下のバックグラウンドを持っているものと想定していま
す。
v 使用しているコンピュータ、オペレーティング システム、およびオペレーティング
システムが提供するユーティリティに関する実際的な知識
v リレーショナル データベースの処理またはデータベース概念の公開についての経験
v コンピュータ プログラミングに関する経験
リレーショナル データベース、SQL、または使用しているオペレーティング システム
に関して限定された経験しか持っていない場合は、以下の IBM Informix の資料を参照
してください。
v IBM Informix: スタートアップ ガイド
v IBM Informix: GLS ユーザーズ ガイド
v IBM Informix: SQL ガイド: 参照
v IBM Informix: SQL ガイド: 構文
viii
IBM Informix: DB-Access ユーザーズ ガイド
v IBM Informix: SQL ガイド: チュートリアル
ソフトウェア依存関係
このマニュアルでは、以下のデータベース サーバの 1 つを使用することを想定してい
ます。
v IBM Informix Extended Parallel Server, バージョン 8.40
v IBM Informix Dynamic Server, バージョン 9.40
ロケールに関する前提事項
IBM Informix 製品は、多くの言語、国/地域別環境、およびコード セットをサポートで
きます。すべての文化的差異に基づいた情報は、広域言語サポート (GLS) ロケールと呼
ばれる単一の環境にまとめられています。
このマニュアルでは、デフォルト ロケールとして U.S. 8859-1 英語のロケールを使用
しているものと想定しています。デフォルトは、UNIX プラットフォームでは
en_us.8859-1 (ISO 8859-1) になり、Windows 環境の場合には en_us.1252 (Microsoft
1252) になります。このロケールは、日付、時刻、および通貨について米国英語形式の
規則をサポートし、ISO 8859-1 または Microsoft 1252 コード セット (ASCII コード
セットに é、è、ñ などの多くの 8 ビット文字を加えたものを含む) もサポートしま
す。
データまたは SQL 識別子の中にデフォルト以外の文字を使用する予定である場合、ま
たは文字データの照合ルールとしてデフォルト以外のルールに準拠するようにしたい場
合には、デフォルト以外の該当するロケールを指定する必要があります。
デフォルト以外のロケールの指定方法、追加構文、および GLS ロケールに関するその
他の考慮事項については、「IBM Informix: GLS ユーザーズ ガイド」を参照してくださ
い。
新機能
データベース サーバの新機能の包括的なリストについては、「IBM Informix: スタート
アップ ガイド」を参照してください。
マニュアルの規則
この節では、このマニュアルで使用している規則について説明します。これらの規則に
よって、マニュアル セットのこのボリュームと他のボリュームからの情報の収集が容易
になります。
以下の規則について説明します。
v 文字の表記
序
ix
v その他の規則
v 構文ダイヤグラム
v コマンド行の規則
v コード例の表記
文字の表記
このマニュアルでは、新しい用語を紹介したり、画面表示を説明したり、コマンド構文
を説明する場合などに、以下の規則を使用します。
規則
意味
KEYWORD
プログラム言語の文における主要素 (キーワード) は、すべて大文字
のセリフ フォントで表示されます。
italics
italics
italics
テキストの場合、新しい用語および強調される単語はイタリックで表
示されます。構文およびコード例の場合、ユーザが指定する可変値
は、イタリックで表示されます。
boldface
boldface
プログラム エンティティ (クラス、イベント、および表など) の名
前、環境変数、ファイルおよびパスの名前、およびインターフェイス
エレメント (アイコン、メニュー項目、およびボタンなど) は太文字
で表示されます。
monospace
monospace
製品によって表示される情報およびユーザが入力した情報は、モノス
ペース書体で表示されます。
KEYSTROKE
ユーザが押すキーは、大文字のサンセリフ フォントで表示されま
す。
→
この記号はメニュー項目を示します。例えば、
『「Tools」→「Options」を選択』は、「Tool」メニューから
「Options」を選択するという意味になります。
ヒント: 文字を「入力する」またはコマンドを「実行する」という指示がある場合、入
力した直後に Enter キーを押してください。テキストを「入力する」または他
のキーを「押す」という指示がある場合には、Enter キーは必要ありません。
その他の規則
マニュアル全体を通して、幾つかの異なるタイプのマークアップで識別されるテキスト
が見つかります。
コメント
コメントは、以下の例に示すように、3 つのタイプの情報を識別します。
x
IBM Informix: DB-Access ユーザーズ ガイド
警告: きわめて重要な指示、注意、または重大情報が含まれるパラグラフを識別しま
す。
重要: 説明されている機能または操作に関する重要な情報が含まれるパラグラフを識
別します。
ヒント: 説明されている機能に関する追加の詳細またはショートカットを提供するパ
ラグラフを識別します。
機能、製品、プラットフォーム
機能、製品、およびプラットフォームのマークアップは、機能固有、製品固有、または
プラットフォーム固有の情報が含まれるパラグラフを識別します。このマークアップの
一例は、以下のとおりです。
Dynamic Server
IBM Informix Dynamic Server 固有の情報を識別します
Dynamic Server の終り
UNIX のみ
UNIX プラットフォーム固有の情報を識別します
UNIX のみ の終り
Windows のみ
Windows 環境固有の情報を識別します
Windows のみ の終り
このマークアップは、1 つの節の中で 1 つ以上のパラグラフに適用できます。節全体が
特定の製品またはプラットフォームに適用される場合には、以下のように、そのことが
見出しテキストの一部として示されます。
表ソート (Windows のみ)
構文ダイヤグラム
このガイドでは、文およびシステム レベルのコマンド以外のすべてのコマンドの構文を
記述するために、以下のコンポーネントで構成されるダイヤグラムを使用します。
序
xi
コンポーネント
意味
文の開始。
文が次の行に続く。完全な文以外の構文要素は、この
記号で終わります。
文が前の行から続く。完全な文以外の構文要素は、こ
の記号で始まります。
文の終り。
必須項目。
オプションの項目。
必須項目を選択。 項目を 1 つだけ選択して指定する
ことが必須です。
ASC
オプションの項目を選択。デフォルト値が存在する場
合は、太字で印刷されます。
DESC
,
オプションの項目。 複数の項目を指定することが許
されますが、それぞれの繰り返しの前にカンマが必要
です。
ASC
DESC
構文フラグメントの開始
構文フラグメントの終了
上記の構文要素を組み合わせて、以下のようなダイヤグラムを作成します。
xii
IBM Informix: DB-Access ユーザーズ ガイド
REORG table_name
,
INDEX
RECALCULATE RANGES
index_name
(
)
;
OPTIMIZE
ON
OFF
以下の文のダイヤグラムのような複雑な構文ダイヤグラムでは、それらのコンポーネン
トの詳細ダイアグラムが参照ポイントの補助として繰り返されます。
LOAD
INPUT_CLAUSE
DATA
FORMAT_CLAUSE
DISCARD CLAUSE
TABLE_CLAUSE
optimize_clause segment_clause criteria_clause comment_clause
;
次に、参照ポイントのダイヤグラムの後に、網かけされた部分 (ここでは input_clause)
を展開したダイヤグラムが、以下のように続きます。
INPUT CLAUSE
INPUTFILE
INDDN
filename
TAPE DEVICE
(
'FILENAME'
'DEVICE NAME'
)
START RECORD
START_ROW
STOP RECORD
stop_row
構文ダイヤグラムの読み方
図 1 に、前の説明でリストした要素の一部を使用する構文ダイヤグラムを示します。
setenv INFORMIXC
compiler
pathname
図 1. 構文ダイヤグラムの例
コマンドを正しく構築するには、コマンドの左上から開始します。必要な要素を組み込
みながら、ダイヤグラムを右に進みます。ダイヤグラムの中の要素は、大文字と小文字
を区別します。
図 1 は、以下の手順を示しています。
1. setenv と入力する。
2. INFORMIXC と入力する。
3. コンパイラ名またはパス名のいずれかを指定する。
序
xiii
compiler (コンパイラ名) または pathname (パス名) を選択した後、終端記号に達し
ます。これで、コマンドは完了です。
4. Enter キーを押して、コマンドを実行する。
キーワードと句読点
キーワードとは、文およびシステム レベルのコマンドを除くすべてのコマンドの予約済
みの語です。構文ダイヤグラムにキーワードが表される場合は、大文字で示されます。
コマンド内でキーワードを使用するときには大文字でも小文字でも書くことができます
が、構文ダイヤグラムに示される通りの正確なスペルにする必要があります。
文およびコマンド内のすべての句読点も、構文ダイヤグラムに示される通りに正確に使
用する必要があります。
識別子と名前
変数は、構文ダイヤグラムと例の中の識別子と名前の位置を示すものとして働きます。
コンテキストに応じて、変数を任意の名前、識別子、またはリテラルに置き換えること
ができます。変数は、追加の構文ダイヤグラムに展開された複雑な構文要素を表すため
にも使用されます。変数が構文ダイヤグラム、例、またはテキスト内で表される場合、
小文字のイタリック で示されます。
以下の構文ダイヤグラムでは、単純な SELECT 文の一般形式を示すために、変数を使
用しています。
SELECT column_name FROM table_name
この形式の SELECT 文を書く場合、変数 column_name と table_name を特定の列名と
表名に置き換えます。
コード例の表記
このマニュアル全体に渡って、SQL コードの例があります。特に注記がある場合を除
き、コードは、特定の IBM Informix アプリケーション開発支援ツールに固有なもので
はありません。
例の中に SQL 文だけがリストされている場合、それらの文はセミコロンで区切られて
いません。例えば、以下の例のようにコードが示されます。
CONNECT TO stores_demo
...
DELETE FROM customer
WHERE customer_num = 121
...
COMMIT WORK
DISCONNECT CURRENT
xiv
IBM Informix: DB-Access ユーザーズ ガイド
この SQL コードを特定の製品で使用するためには、その製品用の構文ルールを適用す
る必要があります。例えば、DB–Access を使用している場合には、複数の文をセミコロ
ンで区切る必要があります。 SQL API を使用している場合には、それぞれの文の最初
に EXEC SQL を使用し、文の終りにセミコロン (または他の適切な区切り記号) を使
用する必要があります。
ヒント: コード例の中の省略記号の部分は、完全なアプリケーションではさらにコード
が追加される可能性があるが、説明している概念を記述するためには、表示す
る必要がないことを示しています。
特定のアプリケーション開発支援ツールまたは SQL API 用の SQL 文の使用に関する
詳細な指示については、その製品のマニュアルを参照してください。
関連マニュアル
IBM Informix Dynamic Server のマニュアルは、以下のような、さまざまな形式で提供
されます。
v オンライン マニュアル。 メディア パック内のマニュアル CD により、製品マニュ
アルを印刷することができます。同じオンライン マニュアルを、以下の IBM
Informix Online Documentation サイトから入手することができます。
http://www-3.ibm.com/software/data/informix/pubs/library/
v オンライン ヘルプ。 この機能は詳細ヘルプ、エラー メッセージ参照、言語構文な
どを提供することができます。
v ドキュメント ノート、リリース ノート、およびマシン ノート。 ドキュメント ノ
ート、リリース ノート、およびマシン ノートは、製品がインストールされているデ
ィレクトリの中にあります。以下の表で、これらのファイルを説明します。
UNIX のみ
UNIX プラットフォームでは、以下のオンライン ファイルが
$INFORMIXDIR/release/en_us/0333 ディレクトリにあります。
オンライン ファイル
目的
ids_dbacc_docnotes_9.40.html
このマニュアルの現行バージョン用のドキュメント ノート ファイ
ルには、マニュアルでカバーしていないトピックや、マニュアルの
発行後に変更されたトピックが記載されています。
ids_unix_release_notes_9.40.html
リリース ノート ファイルには、以前のバージョンの IBM Informix
製品との相違点、およびこの相違点が現行の製品に与える影響が記
序
xv
載されています。また、このファイルには、既知の問題とその対応
策に関する情報も含まれています。
ids_machine_notes_9.40.txt
マシン ノート ファイルには、コンピュータで IBM Informix 製品
を構成して使用するために実行する必要がある特殊なアクションが
記載されています。マシン ノートには、説明されている製品の名
前が付けられています。
UNIX のみ の終り
Windows のみ
以下の項目が Informix フォルダの中にあります。このフォルダを表示するには、タ
スクバーから「スタート」→ 「プログラム」→「Informix」→ 「Documentation
Notes」または「Release Notes」を選択します。
プログラム グループ項目
説明
ドキュメント ノート
この項目には、マニュアルに対する追加または修
正 (マニュアルではカバーしていない可能性のあ
る機能、またはマニュアル発行後に変更されてい
る機能に関する情報を備えたもの) が含まれてい
ます。
リリース ノート
この項目には、以前のバージョンの IBM Informix
製品との相違点、およびこの相違点が現行の製品
に与える影響が記載されています。また、このフ
ァイルには、既知の問題とその対応策に関する情
報も含まれています。
マシン ノートは Windows プラットフォームには適用されません。
Windows のみ の終り
v エラー メッセージ ファイル。Informix ソフトウェア製品では、エラー メッセージ
とその修正処置が含まれる ASCII ファイルを提供しています。
UNIX のみ
UNIX でエラー メッセージを読むには、finderr コマンドを使用して、エラー メッ
セージをオンラインで表示できます。
UNIX のみ の終り
xvi
IBM Informix: DB-Access ユーザーズ ガイド
Windows のみ
Windows でエラー メッセージと修正処置を読むには、Informix Error Messages
ユーティリティを使用します。このユーティリティを表示するには、タスクバーから
「スタート」→「プログラム」→「Informix」と選択します。
Windows のみ の終り
参考文献
データベース サーバとオペレーティング システム プラットフォームの概要を提供する
資料のリストについては、「IBM Informix: スタートアップ ガイド」を参照してくださ
い。
業界標準への準拠
米国規格協会 (ANSI) では、SQL 用の 1 組の業界標準を確立しています。
IBM Informix SQL ベースの製品は、SQL-92 Entry Level (ANSI X3.135-1992 として公
開) に完全に準拠しています。これは ISO 9075:1992 と同一です。さらに、Informix デ
ータベース サーバの多くの機能が、SQL-92 Intermediate and Full Level および X/Open
SQL CAE (共通アプリケーション環境) 標準に準拠しています。
序
xvii
xviii
IBM Informix: DB-Access ユーザーズ ガイド
第 1 章 DB-Access 入門
本章について
本章では、新規ユーザに DB–Access の概要を説明します。DB–Access 環境とデモンス
トレーション データベースのセット アップ方法についての情報を提供します。
本章では、以下のトピックについて説明します。
v DB–Access とは
v DB–Access のセット アップ
v デモンストレーション データベースの作成と処理
v DB–Access 権限の設定
v DB–Access の起動
DB-Access とは
DB–Access は、構造化照会言語 (SQL) 文とストアド プロシジャ言語 (SPL) ルーチン
の入力、実行、およびデバッグのためのユーザ インターフェイスを提供します。
SQL とSPL により、データ定義タスク (表内にデータ列の数と型を指定するなど) とデ
ータ管理タスク (表データの保管、表示、および変更など) を実行することが可能にな
ります。 DB–Access インターフェイスにより、SQL と SPL に対して強力な Informix
拡張セットを適用することが可能になります。
以下のデータベース処理の局面に対して、DB–Access を使用することができます。
v 頻繁には実行しないアドホック問合せの使用
v 1 つ以上のデータベースへの接続、データベースと外部テキスト ファイルの間での
データの転送、およびデータベースに関する情報の表示
v システム カタログ表および情報スキーマの表示 (「IBM Informix: SQL ガイド: 参
照」に説明があります)
v 「IBM Informix: SQL ガイド: チュートリアル」または「IBM Informix: データベース
設計および実装 ガイド」で提供された文および例の実行
v 稼働環境で使用するために保管することを目的としたアプリケーションのテスト
重要: DB–Access は、アプリケーション開発環境を意図したものではありません。これ
らを DB–Access 内で実行する場合には、SQL 文を使用して条件付きブランチま
たはループを行ってください。
© Copyright IBM Corp. 1996, 2002
1
DB-Access の使用
DB–Access ユーザ インターフェイスを使用して、以下のことができます。
v 対話式に文を実行し、希望する結果が得られた後でそれらの文を廃棄するか、または
繰り返し実行するためにそれらをファイルに保管する。
v DB–Access のテキスト入力画面または好みのテキスト エディタで、文を直接入力す
る。
v メニュー モードで DB–Access を開始し、メニューからオプションを選択する。
3 ページの図 2 に、DB–Access メニュー階層のトップの 2 レベルを示します。利用で
きるオプションの表示は、DB–Access を使用して実行できるデータベース タスクのタ
イプを要約しています。
2
IBM Informix: DB-Access ユーザーズ ガイド
図 2. DB-Access のメニュー階層
詳細なサブメニューの説明については、以下の章を参照してください。
オプション
説明箇所
Query-language
35 ページの『第 3 章 「Query-language」オプショ
ン』
第 1 章 DB-Access 入門
3
Database
59 ページの『第 4 章 「Database」オプション』
Table
73 ページの『第 5 章 「Table」オプション』
Session
123 ページの『第 6 章 「Connection」オプション
と「Session」オプション』
Connection
123 ページの『第 6 章 「Connection」オプション
と「Session」オプション』
DB-Access のセット アップ
この節では、DB-Access 環境をセット アップするための手順について検討します。
DB-Access のインストール前
DB–Access 環境をセット アップする前に、以下の準備ステップを実行する必要があり
ます。
1. データベース サーバをインストールして、環境変数を設定する。
広域言語サポート
2. 広域言語サポート (GLS) ロケールをセット アップする (言語ローカライゼーション
のために必要です)。
広域言語サポート の終り
3. データベース サーバを開始する。
これで、デモンストレーション データベース用の初期化スクリプトを実行し (オプショ
ンです)、10 ページの『DB-Access の起動』で説明しているように DB–Access プログ
ラムを起動することができます。
環境変数
インストールとセット アップのプロセスの一環として、システムまたはデータベースの
管理者は、IBM Informix 製品を特定のオペレーティング システム環境で作動できるよ
うにする、特定の環境変数を設定します。この節では、ユーザが DB–Access を使用で
きる機能の範囲に影響を与える環境変数を挙げます。
重要: UNIX プラットフォームで DB–Access を使用する場合はパス内に
$INFORMIXDIR/bin が必要であり、Windows プラットフォームで DB–Access を
使用する場合はパス内に %INFORMIXDIR%¥bin が必要です。オペレーティング
システムは、このパスを使用して、初期化スクリプトと dbaccess 実行可能ファイ
4
IBM Informix: DB-Access ユーザーズ ガイド
ルの場所を突き止めます。
UNIX のみ
UNIX 環境では、データベース サーバは、INFORMIXTERM にリストされた端末セッ
ト アップの中から、該当する端末セット アップを持っている必要があります。
UNIX のみ の終り
以下のオプションの環境変数を設定することができます。
Dynamic Server
v DBACCNOIGN は、メニュー モードで LOAD コマンドを実行した場合に、不完全
なトランザクションをロール バックします。
Dynamic Server の終り
Extended Parallel Server
v DBACCNOIGN は、メニュー モード以外でエラーが発生した場合に、不完全なトラ
ンザクションをロール バックします。
Extended Parallel Server の終り
v DBCENTURY により、04/15/98 のように、年が 2 桁しかない DATE と
DATETIME の値に対して、適切な拡張値を選択することができます。
v DBDATE は、DATE 値のエンド ユーザ フォーマットを指定します。この変数に関
して詳しくは、「IBM Informix: 移行ガイド」を参照してください。
v DBEDIT は、オペレーティング システム シェルに関連付けられたデフォルトのテキ
スト エディタを変更することなく、デフォルトの DB–Access テキスト エディタを
設定します。
デフォルトとしてユーザが指定したテキスト エディタを DB–Access が使用する方法
について詳しくは、39 ページの『新規の SQL 文の入力』を参照してください。
v DBFLTMASK は、実数 (FLOAT) 型、小桁実数 (SMALLFLOAT) 型、および 10 進
数 (DECIMAL) 型のデータ型のデフォルトの浮動小数点値を 14 文字バッファ内に設
定します。
この変数の効果は、数字に対する DB–Access ディスプレイ サイズに限定されます。
v DELIMIDENT により、データベース サーバは、二重引用符 (“) の付いたテキスト
を、文字列ではなく識別子として解釈します。
第 1 章 DB-Access 入門
5
Dynamic Server
v IFX_LONGID は、クライアント アプリケーションでロング識別子を扱えるかどうか
を決定します。
Dynamic Server の終り
環境変数について詳しくは、「IBM Informix: SQL ガイド: 参照」を参照してくださ
い。
デモンストレーション データベースの作成と処理
デモンストレーション データベースを使用するか、または自分で作成したデータベース
を使用して、DB–Access を使用する練習を行うことができます。 Informix デモンスト
レーション データベースを使用している場合、提供されたデータとスクリプトの追加、
削除、または変更を行った後、データベースをその元の状態に再初期化することができ
ます。このマニュアルでは、デモンストレーション データに対して実行する文の例を、
それらの文の結果を示す図とともに提供します。
デモンストレーション データベース
IBM Informix データベース サーバ製品と一緒に提供される DB–Access ユーティリテ
ィには、以下のデモンストレーション データベースのうちの 1 つまたは複数が含まれ
ています。
v stores_demo データベースは、架空のスポーツ用品卸売り業者に関する情報を備え
たリレーショナル スキーマを示したものです。 IBM Informix マニュアルの中の多く
の例が、stores_demo データベースを基にしています。
Extended Parallel Server
v sales_demo データベースは、データウェアハウス アプリケーション用の次元スキ
ーマを示したものです。次元データ モデルの概念については、「IBM Informix: デー
タベース設計および実装 ガイド」を参照してください。
Extended Parallel Server の終り
Dynamic Server
v superstores_demo データベースは、オブジェクト リレーショナル スキーマを示し
たものです。 superstores_demo データベースには、拡張データ型、型と表の継
承、およびユーザ定義ルーチンの例が含まれています。
Dynamic Server の終り
6
IBM Informix: DB-Access ユーザーズ ガイド
これらのデータベースとその内容については、「IBM Informix: SQL ガイド: 参照」を
参照してください。
デモンストレーション データベースをインストールするために使用するスクリプトは、
UNIX プラットフォームの場合は $INFORMIXDIR/bin ディレクトリにあり、Windows
環境では %INFORMIXDIR%¥bin ディレクトリにあります。
表 1 に、それぞれのデータベース サーバで使用可能なデータベースをリストしていま
す。デモンストレーション データベースをセット アップまたは再初期化するには、表
1 に示す、対応する初期化スクリプトを実行してください。
表 1. デモンストレーション データベース
サーバのタイプ
データベース名
モデル
初期化スクリプト
すべての Informix データベース
サーバ
stores_demo
リレーショナル デー
タベース
dbaccessdemo
IBM Informix Extended Parallel
Server
sales_demo
次元データ ウェアハ
ウス
dbaccessdemo -dw
IBM Informix Dynamic Server
superstores_demo オブジェクト リレー
ショナル データベー
ス
dbaccessdemo_ud
デモンストレーションのインストール
デモンストレーション データベース用のインストール スクリプトを実行するときに、
スクリプトから、サンプル SQL コマンド ファイルをコピーしたいかどうかを尋ねられ
ます。デモに含まれているコマンド ファイルには .sql という拡張子が付いており、ユ
ーザが使用できるサンプル SQL 文が入っています。
以下の理由によって、SQL コマンド ファイルを格納したいディレクトリから、
DB–Access を常に初期化または実行してください。
v デモンストレーション データベースを作成または再初期化するたびに、インストー
ル スクリプトから、デモンストレーション データベースと一緒に提供されたサンプ
ル コマンド・ファイルのコピーをカレント ディレクトリに保管したいかどうかを尋
ねるプロンプトが出されます。
v DB–Access は、カレント ディレクトリの中の .sql という拡張子で終わっているファ
イルのみをリストします。
コマンド ファイルについては、 133 ページの『付録 B. デモンストレーション SQL』
に説明があります。
デモンストレーション データベースを作成するには:
第 1 章 DB-Access 入門
7
1. 新規ディレクトリを作成します。
UNIX のみ
作成したパス名の中のそれぞれのディレクトリに対して、UNIX の読取り権限と実行
権限を持っている必要があります。
UNIX のみ の終り
2. ディレクトリを新規ディレクトリに変更し、初期化スクリプトを実行します。
7 ページの表 1 に、それぞれのデータベース サーバのバージョンで使用可能なさま
ざまなデータベース モデルについての説明があります。初期化スクリプトで使用で
きるオプションについては、8 ページの『コマンド行構文』を参照してください。
3. データベースが作成されるにつれて、一連のメッセージが初期化スクリプトによって
画面に表示されます。スクリプトの最終メッセージは、ユーザに選択するように促す
プロンプトです。ユーザが作成したディレクトリにコマンド ファイルをコピーした
ければ、Y を押してください。
ヒント: データベースまたはコマンド ファイルに対して行った変更を廃棄したい場合
は、デモンストレーション初期化スクリプトを再実行してください。スクリプ
トからプロンプト メッセージが出されたときに、Y を押して、コマンド ファ
イルをオリジナルのバージョンのものに置き換えてください。
コマンド行構文
この節の図は、初期化スクリプトの構文を示しています。構文ダイヤグラムの読み方に
ついては、このマニュアルの序の xi ページの『構文ダイヤグラム』を参照してくださ
い。
stores_demo を作成する場合:
dbaccessdemo
-log
dbname
-dbspace
dbspace_name
Extended Parallel Server
sales_demo を作成する場合:
dbaccessdemo -dw
Extended Parallel Server の終り
8
IBM Informix: DB-Access ユーザーズ ガイド
Dynamic Server
superstores_demo を作成する場合:
dbaccessdemo_ud
-log
dbname
-dbspace
dbspace_name
Dynamic Server の終り
-dw
sales_demo データベースを作成します。
-log
デモンストレーション データベース用にトランザクション ログ機能
を要求します。
dbname
デフォルトのデータベース名を置き換えます。オブジェクト名のガイ
ドラインについては、「IBM Informix: SQL ガイド: 構文」を参照し
てください。
-dbspace
デモンストレーション データベース用に特定の DB 領域を要求しま
す。
dbspace_name デモンストレーション データベースを収容します。DB 領域名を指定
しないと、デフォルトによって、データベースのデータはルート DB
領域に書き込まれます。 DB 領域を作成するには、onspaces ユーテ
ィリティを使用します (「IBM Informix: 管理者ガイド」に説明があり
ます)。
例:
v 以下のコマンドは、stores_demo という名前のデータベースを作成します。
dbaccessdemo
v 以下の例は、demo_db という名前の stores_demo データベースのインスタンスを
作成します。
dbaccessdemo demo_db
v 以下のコマンドは、stores_demo データベースを初期化し、トランザクションのロ
グも開始します。
dbaccessdemo -log
v 以下のコマンドは、demo_db という名前の stores_demo データベースのインスタ
ンスを dbspace_2 の中に作成します。
dbaccessdemo demo_db -dbspace dbspace_2
第 1 章 DB-Access 入門
9
デモンストレーション データベースのアクセス権
あるログインで、初期化スクリプトを実行してデモンストレーション データベースのイ
ンスタンスを作成した場合、データベース サーバは、そのログインしたユーザをそのデ
ータベースの所有者およびデータベース管理者 (DBA) として認識します。 DBA は、
データベース内のオブジェクトに対して、ある種の排他的アクセス権を自動的に獲得し
ます。これらのアクセス権は、GRANT 文を使用して他のユーザに付与することができ
ます (「IBM Informix: SQL ガイド: 構文」に説明があります)。
SQL コマンド ファイルに対する権限
一部のオペレーティング システムでは、SQL コマンド ファイルを実行するために実行
権限、これらのファイルまたはその内容を DB–Access で表示するために読取り権限、
あるいは、修正されたファイルまたは新規ファイルを保管するために書込み権限を必要
とします。
UNIX のみ
UNIX chmod コマンドを使用して、初期化スクリプトがインストールされた SQL フ
ァイルの実行を可能にします。
UNIX のみ の終り
DB-Access の起動
DB-Access の起動方法について詳しくは、以下を参照してください。
v すべてのメニューを表示するには、そのメイン メニューで DB–Access を開始しま
す。 12 ページの『メイン メニューの表示』を参照してください。
v 特定の DB–Access メニューまたは画面を開始および終了するには、12 ページの『そ
の他のメニューまたはオプションの表示』を参照してください。
v DB–Access メニューを表示せずに SQL 文が入っているファイルを実行するには、17
ページの『コマンド ファイルの実行』を参照してください。
v フルスクリーン メニュー インターフェイスを使用せずにコマンド行に DB–Access
オプションを入力するには、19 ページの『非メニュー モードでの対話式での
DB-Access の使用』を参照してください。
v DB–Access のバージョンを検査するか、または印刷不能文字を 16 進形式で転送する
には、19 ページの『印刷不能文字に対する XLUF 機能の活動化』を参照してくださ
い。
10
IBM Informix: DB-Access ユーザーズ ガイド
Windows のみ
DB–Access プログラム アイコンをセット アップして、本章で示すすべてのコマンドを
実行することができます。
Windows のみ の終り
UNIX のみ
TERM、TERMCAP、または TERMINFO 環境変数では、ユーザが使用している端末の
タイプを DB–Access が認識できない場合、メイン メニューは表示されません。その代
わりに、以下のテキストに類似したメッセージが表示されます。
Unknown terminal type.
UNIX のみ の終り
Windows のみ
UNIX データベース サーバで DB–Access を実行するために Windows 端末を使用して
いる場合、端末エミュレーション ウィンドウでは、DB–Access が認識できる端末タイ
プをエミュレートする必要があります。そうでないと、データベース サーバでは、端末
タイプが不明であることを示すメッセージが端末エミュレーション ウィンドウに表示さ
れます。
INFORMIXTERM について、および該当する端末セット アップについて詳しくは、
「IBM Informix: Installation Guide」または「IBM Informix: SQL ガイド: 参照」を参照
してください。
Windows のみ の終り
ヒント: オペレーティング システムで dbaccess を見付けられない場合には、以下の
ように、プログラム名の前にフル パスを指定してください。
$INFORMIXDIR/bin/dbaccess
DB-Access メニュー インターフェイスの開始
この節における構文ダイヤグラムの読み方については、このマニュアルの序の xi ページ
の『構文ダイヤグラム』を参照してください。DB–Access メニュー構造について詳しく
知りたい場合は、3 ページの図 2を参照してください。
第 1 章 DB-Access 入門
11
メイン メニューの表示
通常、メイン メニューをトップレベルのメニューとして DB–Access を開始し、そのメ
ニューからサブメニューとそれらのオプションに到達するようにします。
UNIX のみ
UNIX 端末で OpenWindows などのウィンドウ インターフェイスを使用している場合
は、スクロールしないコンソール ウィンドウから dbaccess コマンドを出してくださ
い。
UNIX のみ の終り
パスに $INFORMIXDIR/bin が含まれている場合に、以下のコマンドは、DB–Access を
開始するための最も簡単な方法を示しています。
dbaccess
引数なしの dbaccess という単語だけのコマンドは、データベースを選択せず、オプ
ションも活動化しませんが、メイン メニューを開始します。次に、そのメイン メニュ
ーからサブメニューを選択することができます。
その他のメニューまたはオプションの表示
以下のダイヤグラムに示されたオプションを指定して、メニューに直接アクセスするこ
とができます。
dbaccess
-ansi
database
-q
query_language _menu_option
filename
table
-t
table_menu_option
table
-d
-c
-s
-e
database_menu_option
connect_menu_option
database
-
filename
-v
-V
-X
12
IBM Informix: DB-Access ユーザーズ ガイド
Dynamic Server
dbaccess
-ansi
database
-q
query_language _menu_option
filename
table
-t
table_menu_option
table
-d
-c
-s
-e
-m
database_menu_option
connect_menu_option
database
database
-
filename
filename
-v
-V
-X
Dynamic Server の終り
-ansi
ANSI に準拠する Informix 拡張構文が検出されると、DB–Access に
より警告が生成されます。詳しくは、18 ページの『ANSI 標準準拠の
チェック』を参照してください。
-c
「CONNECTION」メニューをトップレベルのメニューとして開始しま
す。
-d
「DATABASE」メニューをトップレベルのメニューとして開始しま
す。
-e
filename で指定されたコマンド ファイルから、それぞれの行をエコー
イングします。
-m
コマンド ファイル内の SQL 文に関連する、複数レベルのサーバによ
って生成されたすべてのエラー メッセージを表示します。
このオプションは、IBM Informix Dynamic Server でのみ利用できま
す。
-q
問合せ言語メニュー (「SQL」メニュー) をトップレベル メニューと
して開始します。
-s
DB-Access のメイン メニューに接続して、現行セッションに関する情
報を表示します。
第 1 章 DB-Access 入門
13
この情報には、データベース サーバの名前、データベース サーバ タ
イプ、ホスト コンピュータ、サーバの機能、およびその他の設定値が
含まれます。
-t
「TABLE」メニューをトップレベル メニューとして開始します。
-v または -V
アプリケーションを起動せずに、DB–Access のバージョン番号とシリ
アル番号を表示します。 -v または -V と一緒に、その他のオプショ
ンを使用することはできません。
-X
LOAD 文と UNLOAD 文の 16 進形式を活動化します。
-
データベースがコマンド ファイルの DATABASE 文に指定されてい
るため、コマンド行にはデータベースを指定しないことを示します。
database
現行セッションの起動時に DB-Access に接続させたいデータベースの
名前。
filename
「SQL」メニューでロードするコマンド ファイルの名前。
table
データベース内の表を指定します。
connect_menu_option
接続メニューのオプションまたはサブオプション。14 ページの
『「CONNECTION」メニュー オプション』を参照してください。
database_menu_option
データベース メニューのオプションまたはサブオプション。 15 ペー
ジの『「DATABASE」メニュー オプション』を参照してください。
query_language_menu_option
問合せ言語メニューのオプションまたはサブオプション。 15 ページ
の『「QUERY-LANGUAGE」メニュー オプション』を参照してくだ
さい。
table_menu_option
表メニューのオプションまたはサブオプション。16 ページの
『「TABLE」メニュー オプション』を参照してください。
コマンド行から指定したサブメニューまたはオプションを終了する場合は、オペレーテ
ィング システムのコマンド行で直接終了させます。
メニュー サブオプション
以下のメニュー サブオプションにより、サブメニューに直接アクセスすることができま
す。
「CONNECTION」メニュー オプション:
-cc
14
「CONNECTION」メニューの「Connect」オプションを選択します。
IBM Informix: DB-Access ユーザーズ ガイド
-cd
「CONNECTION」メニューの「Disconnect」オプションを選択しま
す。
「DATABASE」メニュー オプション:
-dc
「DATABASE」メニューの「Create」オプションを選択します。
-dcl
「DATABASE CREATE」メニューの「LOG」オプションを
選択します。
-dd
「DATABASE」メニューの「Drop」オプションを選択します。
-di
「DATABASE」メニューの「Info」オプションを選択します。このオ
プションでは、以下のように別の文字を後に続けて指定することによ
って、次のメニュー レベルに進み、以下のものを表示させることがで
きます。
-dib
現行のデータベースの DB 領域情報 (OnLine のみ)
-din
現行のデータベースの NLS 情報
-dip
現行のデータベースのストアド プロシジャ
-di オプションの前にデータベース名を指定しなかった場合は、
「SELECT DATABASE」画面から現行のデータベースを選択する必要
があります。
-dl
「DATABASE」メニューの「cLose」オプションを選択します。
-ds
「DATABASE」メニューの「Select」オプションを選択します。
「QUERY-LANGUAGE」メニュー オプション:
-qc
「SQL」メニューの「Choose」オプションを選択します。
-qd
「SQL」メニューの「Drop」オプションを選択します。
-qi
「SQL」メニューの「Info」オプションを選択します。このオプション
では、以下のリストに示すように、別の文字を後に続けて指定して、
さらに表を指定することによって、次のメニュー レベルに進み、以下
のものを表示させることができます。
-qic
表内の列
-qif
表のフラグメンテーション ストラテジの情報
-qig
表内のトリガの情報
-qii
表上のインデックス
-qio
表の制約
-qip
表に対するアクセス権
-qir
表に対する表レベル References アクセス権
第 1 章 DB-Access 入門
15
-qis
表状態情報
-qi オプションと一緒に表名を指定しなかった場合は、「INFO FOR
TABLE」画面から表名を選択する必要があります。
-qm
「SQL」メニューの「Modify」オプションを選択します。
-qn
「SQL」メニューの「New」オプションを選択します。
-qs
「SQL」メニューの「Save」オプションを選択します。
-qu
「SQL」メニューの「Use-editor」オプションを選択します。
-q オプションの前にデータベース名を指定しなかった場合は、
「SELECT DATABASE」画面から現行のデータベースを選択する必要
があります。
「QUERY-LANGUAGE」メニューの「Modify」オプションを選択する場合は、最初に「
CHOOSE」メニューから修正するコマンド ファイルを選択する必要があります。すると
「MODIFY」画面が表示され、テキストが表示されます。
ヒント: 「SQL」メニューの「Run」または「Output」オプションに直接進むことはでき
ません。それを試みると、エラー メッセージが出されます。
「TABLE」メニュー オプション:
16
-ta
「TABLE」メニューの「Alter」オプションを選択します。
-tc
「TABLE」メニューの「Create」オプションを選択します。
-td
「TABLE」メニューの「Drop」オプションを選択します。
-ti
「TABLE」メニューの「Info」オプションを選択します。このオプシ
ョンでは、以下のリストに示すように、別の文字を後に続けて指定し
て、さらに表を指定することによって、次のメニュー レベルに進み、
以下のものを表示させることができます。
-tic
表内の列
-tif
表のフラグメンテーション ストラテジの情報
-tig
表内のトリガの情報
-tii
表上のインデックス
-tio
表の制約
-tip
表に対するアクセス権
-tir
表に対する表レベル References アクセス権
-tis
表状態情報
IBM Informix: DB-Access ユーザーズ ガイド
-ti オプションと一緒に表名を指定しなかった場合は、「INFO FOR
TABLE」画面から表名を選択する必要があります。
-t オプションの前にデータベース名を指定しなかった場合は、
「SELECT DATABASE」画面から現行のデータベースを選択する必要
があります。
コマンド行構文の例
オンラインになっているデータベース サーバに、mystores という名前のデータベース
が含まれているものとします。 mystores データベースを現行のデータベースにするに
は、以下のコマンドを使用して DB–Access を開始します。
dbaccess mystores
オンラインになっていないデータベース サーバのデータベースを指定することができま
す。例えば、以下のコマンドのいずれでも、xyz データベース サーバ上の newstores
データベースを選択します。
dbaccess newstores@xyz
dbaccess //xyz/newstores
DB–Access が開始すると、図 3 に示すように、指定されたデータベースとデータベース
サーバの名前が破線上に表示されます。
DB-Access:
Query-language
Connection
Database
Table
Session
Exit
---------------- newstores@xyz ---------------------Press CTRL-W for Help --図 3. データベースとデータベース サーバの名前が表示された DB-Access メイン メニュー
コマンド ファイルの実行
コマンド行から DB–Access を起動すると、1 つのデータベースを現行として指定し、1
つまたは複数の SQL 文が含まれるファイルを実行し、複数レベルのエラー メッセージ
を表示することができます。
以下のサンプル コマンドは、mystores データベース上の sel_stock.sql という名前
のファイル内にある SQL 文を実行します。
dbaccess mystores sel_stock
以下のサンプル コマンドは、ファイルが指定するデータベース上の sel_all.sql ファイ
ル内の SQL 文を実行します。
dbaccess - sel_all.sql
第 1 章 DB-Access 入門
17
情報スキーマの表示
DB–Access を使用して、$INFORMIXDIR/etc ディレクトリの中の xpg4_is.sql ファイ
ルを実行します。この SQL ファイルは、情報スキーマを作成し、指定されたデータベ
ース用のビューをインストールします。以下のコマンドは、データベース mystores 用
の情報スキーマを作成します。
dbaccess mystores $INFORMIXDIR/etc/xpg4_is.sql
情報スキーマは、Informix 拡張セットを備えた X/Open XPG4 に準拠する、4 つの情報
専用のビューを追加します。 xpg4_is.sql を実行した後、DB–Access を使用して、指
定したデータベース内でアクセスした表と列に関する情報を取得します。情報スキーマ
のビューについて詳しくは、「IBM Informix: SQL ガイド: 参照」を参照してくださ
い。
ヒント: これらの XPG4 準拠のビューを ANSI データベースでインストールすること
はお勧めできません。これは、SQL 標準委員会で定義した ANSI 準拠の情報
スキーマのビューとは、そのフォーマットがかなり異なるからです。
ANSI 標準準拠のチェック
SQL 文が ANSI 標準に準拠しているかどうかをチェックするには、-ansi オプションを
組み込むか、または DBANSIWARN 環境変数を設定します。 -ansi オプション
は、-dc (データベースを作成する場合)、-tc または -ta (表を作成または変更する場
合)、あるいは -qc filename (コマンド ファイルを選択する場合) など、他の dbaccess
オプションと一緒に使用してください。以下のコマンドは、DB–Access によりデータベ
ース research が作成されている間に、ANSI に準拠しているかどうかがチェックされ
ます。
dbaccess -ansi -dc research
DBANSIWARN 環境変数が設定されている場合には、コマンド行で -ansi オプション
を指定する必要はありません。
以下の状況では、警告と一緒に SQLSTATE 値が DB–Access によって表示されます。
v -ansi オプションを組み込んでいるか、または DBANSIWARN 環境変数を設定して
いる。
v ANSI データベースをアクセスまたは作成している。
v ライン モードで DB–Access を実行しているか、.sql 入力ファイルを指定している。
v SQL 文の実行で、エラーでなく警告を生成している。
ANSI 標準準拠データベースについて詳しくは、「IBM Informix: SQL ガイド: 参照」お
よび「IBM Informix: SQL ガイド: チュートリアル」を参照してください。 SQLSTATE
値について詳しくは、「IBM Informix: SQL ガイド: 構文」の GET DIAGNOSTICS 文
の説明を参照してください。「IBM Informix: SQL ガイド: 構文」にも、Informix SQL
構文における ANSI 標準準拠についての情報があります。
18
IBM Informix: DB-Access ユーザーズ ガイド
印刷不能文字に対する XLUF 機能の活動化
-X オプションを使用して、コマンド行で、DB–Access の 16 進でのフォーマットのロ
ードおよびアンロード (XLUF) 機能を活動化することができます。 -X オプションを指
定して DB–Access を起動すると、LOAD および UNLOAD SQL 文で、印刷不能な
ASCII 符号を 16 進でフォーマットすることができます。 UNLOAD 文が作成する
.unl ファイルには、16 進フォーマットでの変更内容が含まれています。
重要: 16 進フォーマットのデータが含まれる .unl ファイルは、バージョン 6.0 より前
の Informix データベース サーバとは互換性がありません。ただし、XLUF 機能
を使用せずに生成された .unl ファイルは、バージョン 6.0 またはそれ以降のデ
ータベース サーバと完全な互換性があります。
詳しくは、「IBM Informix: SQL ガイド: 構文」の LOAD 文および UNLOAD 文の説
明を参照してください。また、「IBM Informix: 移行ガイド」のさまざまな SQL ユーテ
ィリティについての説明、および「IBM Informix: SQL ガイド: 参照」のデータ型に関
する情報も参照してください。
非メニュー モードでの対話式での DB-Access の使用
メニューを使用したくない場合で、準備された SQL ファイルがない場合には、キーボ
ードまたは標準入力装置を使用して SQL 文を入力します。
キーボードまたは標準入力装置からの読取り
メニュー引数 (-q など) を指定せず、最終引数としてハイフンを指定して DB–Access
を起動した場合、DB–Access は、標準入力装置 (UNIX プラットフォームの場合) また
はキーボード (Windows プラットフォームの場合) からコマンドを処理します。
DB–Access は、入力が完了したことをユーザが指示するまで、入力されたものを読み取
ります。次に DB–Access は、入力を処理して、その結果を標準出力装置 (UNIX プラッ
トフォームの場合) またはコマンド ウィンドウ (Windows の場合) に書き込みます。
対話型入力: DB–Access は、端末キーボードから、対話式に SQL 文を読み取って、
実行します。 DB–Access が対話式に実行されている間は、より大 (>) 記号のプロンプ
トによって、ユーザが次の SQL 文を入力する行が示されます。
1 つの SQL 文を終了するためのセミコロン (;) を入力すると、その文が DB–Access に
よって処理されます。対話式セッションを終了するための CTRL-D を押すと、
DB–Access は実行を停止します。以下の例は、対話式セッションにおけるユーザ入力と
結果を示しています。
dbaccess - >database stores_demo;
データベースが選択されました。
>select count(*) from systables;
第 1 章 DB-Access 入門
19
(count(*))
21
1 件見つかりました。
>^D
dbaccess - >database stores_demo;
データベースが選択されました。
>select count(*) from systables;
(count(*))
21
1 件見つかりました。
>^D
UNIX プラットフォームでのバッチ コマンド入力: インライン シェル スクリプ
トを使用して、1 つまたは複数の SQL 文を提供することができます。例えば、インラ
イン標準入力ファイルで、UNIX C シェル、Bourne シェル、または Korn シェルを使
用することができます。
dbaccess mystores- <<EOT!
select avg(customer_num) from customer
where fname matches ’[A-G]*’;
EOT!
パイプを使用して、SQL 文を提供することができます。
echo ’select count(*) from systables’ | dbaccess mystores
DB–Access では、感嘆符 (!) で始まるすべての行がシェル コマンドとして解釈されま
す。シェルのエスケープ行を SQL 文と混ぜて、それらを以下のように SQL 文の中に
書き込むことができます。
dbaccess mystores
>select
!echo hello
>hello
count(*) from systables;
>
(count(*))
21
1 件見つかりました。
>
20
IBM Informix: DB-Access ユーザーズ ガイド
非メニュー モードでのデータベース環境への接続
対話モードで出した SQL 文の中で、CONNECT ... USER 構文を使用することができま
す。ただし、デフォルトのデータベース サーバに接続したときには、DB–Access では
CONNECT 文の USER 節はサポートされません。
対話式の非メニュー モードでの接続: 対話モードで CONNECT 文に USER ‘user
identifier’ 節を組み込んだ場合、パスワードを入力するよう、DB–Access からプロンプ
トが出されます。ユーザ ID を入力するか、または Enter キーを押すことができます。
ユーザ ID を入力する場合には、「IBM Informix: SQL ガイド: 構文」に説明された構
文のガイドラインに従ってください。パスワードを入力する場合、パスワードは画面に
は表示されません。
以下の 2 つのコマンド例は、対話モードでデータベース サーバに接続する方法を示し
ています。最初の例は、ユーザ ID を指定せずに CONNECT 文を使用しています。
dbaccess - > connect to ’@starfish’;
接続されました。
2 番目の例に示すように、CONNECT 文に USER 節を組み込んだ場合、DB–Access
は、パスワードを要求するプロンプトにエコー抑止を使用します。
> connect to ’@starfish’ user ’marae’;
パスワードを入力してください:
接続されました。
重要: セキュリティ上の理由から、他人から見られるところで画面にパスワードを入力
しないでください。また、対話式に DB–Access を使用している場合は、
CONNECT 文に USING password 節を組み込まないでください。対話モードで、
プロンプトが出される前にパスワードを入力しようとすると、エラー メッセージ
が表示されます。
バックグラウンド モードでのファイルまたはシェル ファイルを使用した接続
: USER 節を組み込んだ DB–Access ファイルで、CONNECT 文の USER 節を実行す
ることができます。以下の例は、USING 節を持つ CONNECT 文が含まれるコマンド
ファイルを使用して、データベース サーバに接続します。
dbaccess - connfile.sql
重要: 以下の文が含まれる SQL コマンド ファイルは、
CONNECT USER user_id USING password
第 1 章 DB-Access 入門
21
USER 節で識別される user_id 以外の人にアクセスされないように保護する必要
があります。
UNIX のみ
以下の例は、シェル ファイルを使用して、データベース サーバに接続します。
DB–Access から、パスワードを入力するようプロンプトが出されます。
dbaccess - - <<¥!
connect to ’@starfish’ user ’marae’;
!
パスワードを入力してください:
UNIX のみ の終り
関連資料
データベース サーバのインストール方法、環境変数を設定する方法、およびデータベー
ス サーバをオンラインにする方法については、表 2 にリストされた、ユーザのデータ
ベース サーバ用のマニュアルを参照してください。
表 2. 関連資料
タスクまたは機能
トピック
データベース サーバのインスト
ール
システム
マニュアル
すべて
IBM Informix: Installation Guide
環境変数の設定
.cshrc または
.login
UNIX
IBM Informix: Installation Guide
IBM Informix: SQL ガイド: 参照
環境変数の設定
レジストリ
Windows
IBM Informix: Installation Guide
IBM Informix: SQL ガイド: 参照
UNIX 権限の設定
chmod
UNIX
UNIX のマニュアル
データベース サーバのオンライ oninit
ンへの変更
すべて
IBM Informix: 管理者ガイド
データベース領域の作成
onspaces
すべて
IBM Informix: 管理者ガイド
データベース オブジェクトでの GRANT
権限の付与
すべて
IBM Informix: SQL ガイド: 参照
22
IBM Informix: DB-Access ユーザーズ ガイド
第 2 章 フルスクリーン メニュー インターフェイスの使用
DB-Access ユーザ インターフェイスの使用
DB-Access でのキーボードの使用. . .
メニューの使用 . . . . . . . . .
メニュー オプションの選択 . . .
メニュー画面の終了 . . . . . .
応答画面の使用 . . . . . . . . .
画面ヘッダの読取り . . . . . .
画面での値の選択または入力 . . .
応答画面の終了 . . . . . . . .
ヘルプ画面の使用 . . . . . . . .
エディタ画面の使用 . . . . . . .
代わりのアプローチ . . . . . . . .
データベース レベル タスク . . . .
表レベルのタスク . . . . . . . .
関連資料 . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
23
24
25
26
26
26
27
27
27
28
28
28
29
31
32
本章について
本章では、以下のトピックについて入門的な説明を行います。
v DB–Access ユーザ インターフェイスの使用
v 代わりのアプローチ
v 関連資料
DB–Access について既によくご存じである場合は、入門的なこの章をスキップしてもか
まいません。
DB-Access ユーザ インターフェイスの使用
DB–Access ユーザ インターフェイスは、以下の機能を結合したものです。
v メニューの階層
v 簡単な応答を要求するプロンプトを出し、選択リストから選択を行う画面
v コンテキスト ヘルプ画面
v 表を作成するのに役立つ対話型スキーマ エディタ
v 以下の機能が含まれる SQL プログラマ環境
– 組込み SQL エディタ (これを使用して、SQL 文および SPL 文の入力および修正
を行います)
– 好みに応じて別のエディタを使用するためのオプション
© Copyright IBM Corp. 1996, 2002
23
– データベース サーバの構文検査機能と実行時デバッガ
– SQL ルーチンと SPL ルーチンの保管、抽出、および実行
v データベース問合せとレポートのための出力の選択
プログラマ以外の方は、 73 ページの『第 5 章 「Table」オプション』に説明がある対
話型スキーマ エディタを使用してデータベースを作成します。プログラマは、 35 ペー
ジの『第 3 章 「Query-language」オプション』に説明がある SQL プログラマ環境を使
用します。
この章の残りの部分で、メニューおよび画面をナビゲートする方法について要約しま
す。
DB-Access でのキーボードの使用
端末のキーボードには、DB–Access に指示を出すための特殊キーがあります。
DB–Access の使用を開始する前に、以下のキーの位置を確認してください。
矢印
通常、矢印キーはキーボードの右下にあります。
上矢印 [ ↑ ] キーを押すと、カーソルが 1 行上に移動します。ご使
用の端末に [ ↑ ] キーがない場合は、CTRL-K キーを使用してくださ
い。
下矢印 [ ↓ ] キーを押すと、カーソルが 1 行下に移動します。ご使
用の端末に [ ↓ ] キーがない場合は、CTRL-J キーを使用してくださ
い。
左矢印 [ ← ] キーを押すと、画面上でカーソルの位置が 1 つ後退し
ます。ご使用の端末に [ ← ] キーがない場合は、CTRL-H キーを使用
してください。
右矢印 [ → ] キーを押すと、画面上でカーソルの位置が 1 つ前進し
ます。ご使用の端末に [ → ] キーがない場合は、CTRL-L キーを使用
してください。
Back space (後退)
通常、後退キーはキーボードの右上にあり、左矢印のマークが付いて
いる場合もあります。
Ctrl (コントロール)
コントロール キーは Ctrl または Cntrl というラベルが付けられて
おり、通常はキーボードの左側にあります。本書では、Ctrl (コント
ロール) キーを CTRL と表記します。システムによっては、CTRL-C
は、プログラムを取り消したり打ち切るため、あるいは現行メニュー
を終了して 1 つ上のレベルのメニューに戻るために使用します。この
マニュアルでは、CTRL-C を割込みキーと呼びます。
24
IBM Informix: DB-Access ユーザーズ ガイド
Delete (削除)
削除キーは、RUBOUT、CANCEL、または DEL というラベルが付いている
場合もあります。
ほとんどのシステムでは、削除キーは、プログラムを取り消したり打
ち切るため、あるいは現行メニューを終了して 1 つ上のレベルのメニ
ューに戻るために使用します。このマニュアルでは、削除キーを DEL
キーまたは割込みキーと呼びます。
Esc (エスケープ)
通常、ESCAPE キーはキーボードの左上にあり、ESC というラベルが付
いている場合があります。
Enter
Enter キーは、キーボードの右側にあります。このキーは、RETURN ま
たは NEWLINE というラベルが付いているか、あるいは曲がった左矢印
で示される場合があります。
スペース キー
通常、スペース キーにはラベルが付いていません。
割込み
ご使用の端末が、割込みキーとして、CTRL-C または 削除キー (前述)
を認識するのか、あるいは別のキーを認識するのかを確認するため
に、コマンド行で stty -a というコマンドを出して “intr” の設定をチ
ェックしてください。
メニューの使用
メニューは、それぞれの画面の上部に表示されます。通常、図 4 に示す DB–Access メ
イン メニューは、メニュー階層のトップレベルです。 17 ページの『コマンド ファイ
ルの実行』に説明したように、サブメニュー オプションを使用して DB–Access を起動
する場合には、サブメニューをトップレベルとして選択することができます。
DB-ACCESS: Query-language
Use SQL Query Language.
Connection
Database
Table
Session
Exit
------------------------------------------------Press CTRL-W for Help ---
図 4. 「DB-Access」メイン メニュー
オプション メニューの下にメッセージ が表示され、強調表示されたオプションの機能
を簡単に説明します。別のオプションを強調表示すると、その説明も変わります。ある
オプションが何であるのかを調べるには、そのオプションを強調表示させ、その説明を
読んでください。
ヘッダの下部にある破線には、現行データベース が選択されていればその名前が表示さ
れ、さらにヘルプが必要な場合は CTRL-W キーを押すようにという注意書きが表示され
ます。
第 2 章 フルスクリーン メニュー インターフェイスの使用
25
メニュー オプションの選択
図 4 では、ボックスで囲まれた部分 (つまり、強調表示された部分) は、
「Query-language」が現行のオプションであることを示しています。 Enter キーを押し
て強調表示されたオプションを選択するか、または以下のようにして別のオプションを
選択します。
v スペース キーを使用するか、左矢印キーと右矢印キーを使用して、強調表示部分を
移動します。オプションはリング状に配列されています。したがって、強調表示部分
を右に移動してリストの終りを越えると、最初のオプションが再び現行のオプション
になります。
強調表示されたオプションを選択するには、Enter キーを押します。
v 選択したいオプションの名前の前の英大文字 で示されたショートカット文字を入力
します。 (ショートカット文字は、大文字でも小文字でも入力できます。)
メニューによっては、同じ文字で始まるオプションが複数あるため、ショートカット
キーは、オプション名の英文の最初の文字になるとはかぎりません。例えば、図 5
で、「DATABASE」メニューの「Create」と「cLose」は、両方とも文字「c」で始
まっています。しかし、ショートカット キーで示すように、C キーを押すと
「Create」オプションを選択することになり、L キーを押すと「cLose」オプションを
選択することになります。
DATABASE: Select Create Info
Select a database to work with.
Drop
cLose
Exit
------------------------------------------------ Press CTRL-W for Help ---
図 5. サンプル メニュー画面
DB–Access は、選択されたメニュー オプションに対する画面を表示します。
メニュー画面の終了
メニューに「Exit」オプションがある場合、E キーを押すとメニューは終了します。
「Exit」オプションが存在しない場合は、割込みキー (通常は、DEL または CTRL-C) を
使用してメニューを終了します。これにより、メニューの終了を選択したところから、
メニュー、画面、またはコマンド行に戻ります。
応答画面の使用
図 6 に示す「SELECT DATABASE」画面のような一部の画面では、名前または値を入
力するようプロンプトが出されます。
26
IBM Informix: DB-Access ユーザーズ ガイド
SELECT DATABASE >>
Select a database with the Arrow keys, or enter a name, then press Return.
-------------------------------------------- Press CTRL-W for Help ----mystores@dbserver1
sysmaster@dbserver1
図 6. サンプル応答画面
広域言語サポート
広域言語サポート (GLS) が有効である場合、現行ロケールのコード セット照合順序に
従ってソートされて、項目がリストされます。
広域言語サポート の終り
画面ヘッダの読取り
応答画面の先頭行には、画面名の後に二重の不等号括弧 (>>) とカーソルがあるプロン
プトが表示されます。プロンプトの下にあるメッセージで、「ヘルプは CTRL-W」な
ど、簡単な指示を与えます。 破線は、現行として選択したデータベースを識別するため
のものです。
画面での値の選択または入力
応答を入力する場所は、以下の 2 つの選択が示すように、操作によって異なります。
v 画面の先頭にある二重不等号括弧 (>>) の後に、入力画面のヘッダの中に値を入力で
きます。例えば、図 6 に示す「SELECT DATABASE>>」の後に、有効なデータベー
ス名を入力できます。
入力を終了して Enter キーを押すと、DB–Access は、次の画面を表示するか、また
は他の該当する操作を行います。
v 一部の画面には下部にリストがあり、ヘッダに選択を入力する代わりに、そこから項
目を選択することができます。例えば、図 6 の「SELECT DATABASE」画面には、
現行のデータベース サーバで使用可能なデータベースがリストされます。
矢印キーを使用して希望する項目を強調表示してから、Enter キーを押します。
DB–Access は、次の画面を表示するか、または他の該当する操作を行います。
応答画面の終了
メニューがない画面では、「Exit」オプションが使用できません。前のメニューまたは
画面に戻るには、割込みキー (通常は、DEL または CTRL-C) を押します。
第 2 章 フルスクリーン メニュー インターフェイスの使用
27
ヘルプ画面の使用
CTRL-W を押すと「HELP」画面が表示され、現行のメニュー オプションや画面機能に関
する情報を提供します。 図 7 に、「SQL」メニューの「Run」オプションに関する情報
を要求して CTRL-W を押した場合に表示されるテキストの一部を示します。
HELP: Screen Resume
Displays the next page of Help text.
--------------------------------------------------------------------------The Run option runs the current SQL statements and displays the
output on your terminal.
If there are errors:
If there are errors, an error message will appear on the
bottom of the screen and the Modify option will be highlighted.
図 7. テキストが表示された「HELP」画面の一部
ヘルプ テキストが 1 ページよりも長い場合、「Screen」オプションが強調表示されま
す。次の画面を表示するには、Enter キーを押します。「Resume」オプションを選択す
るには、スペース キーまたは右矢印キーを使用してそのオプションを強調表示してか
ら、Enter キーまたは R キーを押します。
ヘルプ テキストが 1 ページのみである場合、「Resume」オプションが強調表示されて
いるので、Enter キーを押すだけになります。
SQL 文の作成、修正、または編集でオンライン ヘルプを要求する場合に表示される構
文ダイヤグラムの読み方についての図は、『付録 A. SQL 文のオンライン ヘルプの読
み方』を参照してください。
エディタ画面の使用
メイン メニューで「Query-language」オプションを選択した場合は、SQL 文とコマンド
ファイルの作成と修正を行うために、テキスト エディタを使用する必要があります。
DB–Access では、SQL 文とコマンド ファイルを実行する前に、それらのテキストを編
集するために、SQL エディタ を使用する方法とシステム エディタ を使用する方法の
2 つの方法を提供しています。これらの画面は「Query-language」オプションのみを使用
するので、詳細な説明については、35 ページの『第 3 章 「Query-language」オプショ
ン』を参照してください。
代わりのアプローチ
この節では、幾つかの共通データベース タスクを示し、それらを使用するための代わり
の手順を挙げます。この節は、DB–Access インターフェイスを使用するための希望する
方法を決定するのに役立ちます。
28
IBM Informix: DB-Access ユーザーズ ガイド
この節にリストされているそれぞれのタスクで、表の最後の列にある数値は、詳細な説
明がどの章にあるかを示しています。また、32 ページの『関連資料』にリストされた関
連資料が必要な場合もあります。
データベース レベル タスク
現在使用しているデータベースを現行 データベースと呼びます。既存のデータベースを
現行データベースとして選択するには、以下のようにすることができます。
v 以下のコマンド行構文を使用します。
dbaccess databasename
コマンド行からの DB–Access の使用について詳しくは、10 ページの『DB-Access の
起動』を参照してください。
v DB–Access 内から、以下のリストに記載されているいずれかの方法を使用します。
メニュー画面
オプションまたは
SQL 文
CONNECTION
操作
章
Connect
データベース サーバ、ユーザ
名、パスワード、およびデータ
ベース名を要求するプロンプト
を出します。行った選択に従っ
て、接続します。
6
SQL
CONNECT
データベースに接続します。完
全修飾データベース名を使用し
た場合、同時にデータベース
サーバに接続します。
3
DATABASE
Select
現行のデータベース サーバで
使用可能なデータベースのリス
トから、現行データベースを選
択します。
4
SQL
DATABASE
データベースを現行データベー
スとして選択します。
3
第 2 章 フルスクリーン メニュー インターフェイスの使用
29
ユーザ自身のデータベースを作成するには、以下の方法の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
DATABASE
SQL
操作
章
Create
データベース名、DB 領域、
およびログ オプションを要求
するプロンプトを出した後、
新規データベースを作成しま
す。
4
CREATE DATABASE
文の中に名前を指定したデー
タベースを、使用するキーワ
ードに対する適切なセット ア
ップを行って作成します。
3
データベースを削除するには、以下の方法の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
DATABASE
SQL
操作
章
Drop
使用可能なデータベースをリ
ストし、リストからユーザが
選択したデータベースを削除
します。
4
DROP DATABASE
コマンドに名前を指定したデ
ータベースを削除します。
3
データベースをクローズするには、以下の方法の 1 つを使用します。
30
メニュー画面
オプションまたは
SQL 文
DATABASE
操作
章
cLose
現行データベースをクローズ
します。
4
SQL
CLOSE DATABASE
現行データベースをクローズ
します。
3
CONNECTION
Disconnect
現行データベースをクローズ
し、データベース サーバか
ら切り離します。
6
SQL
DISCONNECT CURRENT 現行データベースをクローズ
し、現行のデータベース サ
ーバから切り離します。
3
IBM Informix: DB-Access ユーザーズ ガイド
データベースに関する情報 (そのデータベースが含まれる DB 領域など) を表示するに
は、「DATABASE」メニューで「Info」オプションを選択します。
表レベルのタスク
表の作成、ストレージの割振り、またはフラグメント化の適用を行うには、以下の方法
の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
TABLE
SQL
操作
章
Create
スキーマ エディタを使用しま
す。
5
CREATE TABLE
SQL エディタまたはシステム
エディタと SQL 文を使用し
ます。
3
表の構造を変更するには、以下の方法の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
TABLE
操作
章
Alter
メニューを使用して、既存の
表の変更について、使用可能
な選択をガイドします。
5
CREATE
TABLE
Modify
表を作成する前に、スキーマ
の変更を可能にします。
5
SQL
ALTER TABLE
文に組み込んだキーワードに
従って、既存の表を変更しま
す。
3
SQL
ALTER FRAGMENT
v 既存のフラグメンテーショ
ン ストラテジを変更します
(表またはインデックスの場
合)
3
v 表フラグメントを作成しま
す。
第 2 章 フルスクリーン メニュー インターフェイスの使用
31
データベースから表を削除するには、以下の方法の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
操作
章
TABLE
Drop
現行の表を削除します。
4
SQL
DROP TABLE
コマンドに名前を指定した表
を削除します。
3
表の構造と特性に関する情報を表示するには、以下の方法の 1 つを使用します。
メニュー画面
オプションまたは
SQL 文
TABLE
操作
章
Info
使用可能な表情報カテゴリの
メニューを提供します。
4
SQL
Info (オプション)
使用可能な表のリストから選
択するようプロンプトを出し
た後、「TABLE」画面の
「Info」オプションと同じメニ
ューを提供します。
3
SQL
INFO (SQL 文)
INFO 文で組み込んだキーワー
ドに指定した情報を提供しま
す。
3
表に格納されたデータを表示するには、SQL エディタから SELECT 文を実行します。
35 ページの『第 3 章 「Query-language」オプション』で説明している手順を使用して
ください。
ヒント: 幾つかのコマンド ファイルが DB–Access に組み込まれており、SELECT 文を
実行するサンプルが含まれています。 付録 B に、stores_demo データベー
スと一緒に提供される、デモンストレーション ファイルのリストがあります。
関連資料
以下の IBM Informix の関連資料を参照することによって、DB–Access の利点を理解す
ることができます。
v 「IBM Informix: データベース設計および実装 ガイド」は、さまざまな目標、ストラ
テジ、および Informix データベース サーバに関するデータベース定義の基本を紹介
しています。
32
IBM Informix: DB-Access ユーザーズ ガイド
v 「IBM Informix: SQL ガイド: チュートリアル」は、データ操作の基本を紹介し、
SQL および他の言語によるデータの選択、結合、レポート、および変更のためのアプ
リケーションの設計方法について説明しています。
v 「IBM Informix Client Software Developer's Kit」には、Informix データベース サー
バにデータを置いている開発者のためのプログラマーズ ガイドが含まれています。
DB–Access に関するトピックについて詳しくは、以下を参照してください。
v 「IBM Informix: SQL ガイド: 構文」には、DB–Access で使用可能なすべての SQL
文と SPL 文の構文の説明があります。
v 「IBM Informix: SQL ガイド: 参照」には、以下についての情報が含まれています。
– Informix システム カタログと情報スキーマのビュー
– デモンストレーション データベースの構造と内容
– 環境変数
v 「IBM Informix: GLS ユーザーズ ガイド」は、GLS 機能についての情報を提供しま
す。
第 2 章 フルスクリーン メニュー インターフェイスの使用
33
34
IBM Informix: DB-Access ユーザーズ ガイド
第 3 章 「Query-language」オプション
「SQL」メニューの概要 . . . . . . .
システム エディタの使用 . . . . . .
「Query-language」オプション . . . . .
新規の SQL 文の入力 . . . . . . .
編集キーの使用 . . . . . . . . .
編集に関する制約事項 . . . . . .
SQL 文の実行 . . . . . . . . . .
「Run」オプションでサポートされる文 .
正常終了の結果の表示 . . . . . .
エラーが発生した場合の動作 . . . .
SQL 文の修正 . . . . . . . . . .
問合せ結果の出力先の変更 . . . . . .
プリンタへの出力の送信 . . . . . .
ファイルへの出力の送信 . . . . . .
「New-file」オプション . . . . .
「Append-file」オプション . . . .
パイプへの出力の送信 . . . . . .
既存の SQL 文の選択 . . . . . . .
現行の SQL 文の保存 . . . . . . .
表情報の表示 . . . . . . . . . .
SQL 文の削除 . . . . . . . . . .
SPL ルーチンのサポート . . . . . .
関連資料 . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
36
36
37
39
39
40
41
41
44
45
46
47
48
48
48
49
49
50
51
52
53
55
58
本章について
本章では、DB–Access メイン メニューで「Query-language」オプションを使用する方法
について説明します。「Query-language」オプションを選択すると、DB–Access は
「SQL」メニューを表示します。 SQL 文の入力、修正、保存、抽出、および実行に
は、さまざまな「SQL」メニューを使用します。
「Query-language」オプションを使用して、以下のことを行います。
v SQL と SPL を学習する。
例えば、「Query-language」オプションを使用して、「IBM Informix: SQL ガイド: チ
ュートリアル」の中の例の実習を行います。
v DB–Access スキーマ エディタの代わりに使用して、表構造の作成と変更を行う。
v データの選択、表示、追加、更新、および削除を行う。
DB–Access には、データ操作のためのメニュー オプションはありません。
© Copyright IBM Corp. 1996, 2002
35
本章では、SPL ルーチンのサポートについても説明します。
「SQL」メニューの概要
ユーザがさまざまな「SQL」メニュー オプションを使用するたびに、DB–Access は、
文があれば、それをエディタの中に保存します。これらの文を現行 文と呼びます。
以下のステップを使用して、SQL の作成とテストを行います。
v 新規の SQL 文を入力するか、またはセミコロンで区切られた複数の文を入力するに
は、「New」オプションを使用します。
好みのエディタを使用して問合せの入力または修正を行いたい場合には、
「Use-editor」オプションを使用してください。このオプションは、「New」および
「Modify」オプションの代わりとして提供されています。
v 文を実行するには、「Run」オプションを使用します。
「Run」オプションを選択した場合は、メッセージが表示されるか、または問合せに
よって取得されたデータが、取得された行数と一緒に表示されます。
問合せ結果を端末ではなく出力ファイルまたはプリンタに送るには、「Out」オプシ
ョンを使用してください。
v 問合せの実行時に構文エラーが発生するか、または問合せを変更したい場合、
「Modify」または「Use-editor」オプションを使用して、問合せのテキストを改訂しま
す。
問合せを実行するには、「Run」オプションを使用します。
v コマンド ファイル内の問合せのテキストを保存するには、「Save」オプションを使用
します。
コマンド ファイルに保存した問合せを実行または修正するには、「Choose」オプシ
ョンを使用してファイルを選択します。
v 問合せを保存したコマンド ファイルを削除するには、「Drop」オプションを使用し
ます。
システム エディタの使用
長い SQL 文または連続した文を入力または修正したい場合には、SQL エディタより
も、システム エディタの方が柔軟性と慣れの点で好ましい場合があります。システム
エディタを使用するには、「SQL」メニューから「Use-editor」オプションを選択しま
す。
DBEDIT 環境変数を設定していない場合、そのセッションで使用するテキスト エディ
タをユーザが選択する必要があります。「Use-editor」を選択した場合、図 8 に示したよ
うに、各セッションごとに 1 回、DB–Access はデフォルトのシステム エディタを受け
入れるか上書きするかを尋ねるプロンプトを出します。
36
IBM Informix: DB-Access ユーザーズ ガイド
USE-EDITOR >>vi
Enter editor name. (RETURN only for default editor)
--------------- mystores@dbserver1 ------------ Press CTRL-W for Help -----
図 8. SQL 文の入力と修正のためのサンプルのシステム エディタ画面
DB–Access によって表示されるデフォルト エディタは、ご使用のオペレーティング シ
ステムに対する設定によって異なります。
UNIX のみ
v 共通の UNIX システム エディタは、vi と ex です。
UNIX のみ の終り
Windows のみ
v Write または WordPad などのテキスト フォーマッティング プログラムをシステム
デフォルトとして使用している場合は、.sql ファイルをテキストとして保存する必要
があります。
Windows のみ の終り
「USE-EDITOR」プロンプトの後に名前を指定したデフォルト エディタを選択するに
は、Enter キーを押します。これとは異なるエディタを使用するには、使用するエディ
タの名前を入力し、Enter キーを押します。
「Query-language」オプション
SQL を選択するには、メイン メニューから「Query-language」オプションを選択しま
す。 Q キーを押すか、「Query-language」オプションを強調表示させて、Enter キーを
押します。「Query-language」オプションにより、図 9 に示すような「SQL」メニュー
が表示されます。
SQL: New Run Modify Use-editor Output Choose
Enter new SQL statements using the SQL editor.
Save
Info
Drop
Exit
------------------------------------------------Press CTRL-W for Help -----
図 9. 「SQL」メニュー
メイン メニューで「Query-language」オプションを選択し、データベースを選択しなか
った場合には、「SELECT DATABASE」画面が表示されます。プロンプトにデータベー
第 3 章 「Query-language」オプション
37
スを指定するか、または割込みキーを押して、「SQL」メニューを表示させます。
「SQL」メニューから、現行データベースを指定するための SQL 文を作成または選択
して実行します。
重要: 「SELECT DATABASE」画面では、データベースの名前は 18 文字に制限されて
います。データベース名が 18 文字より長い場合には、名前の最初の 17 文字だ
けが表示され、その後にプラス (+) 符号が付きます。 vi で完全な長い名前を表
示するには、プラス (+) 符号を入力してください。 vi を終了するには、ESC ZZ
を押します。
「SQL」メニューには、以下のオプションがあります。
38
オプション
目的
説明箇所
New
SQL エディタで、現行の文をクリア
してから、カーソルを置きます。
39 ページの『新規の SQL 文の
入力』
Run
現行の SQL 文を実行します。
41 ページの『SQL 文の実行』
Modify
SQL エディタで、現行の SQL 文を修 46 ページの『SQL 文の修正』
正できるようにします。
Use-editor
現行の文を修正するか、または文を新
規に作成できるようにするために、シ
ステム エディタを起動します。
「Use-editor」は、「New」および
「Modify」と交換可能です。
36 ページの『システム エディ
タの使用』
Output
「Run」オプションの出力先を、ファ
イル、プリンタ、またはシステム パ
イプに変更します。
47 ページの『問合せ結果の出力
先の変更』
Choose
実行または修正するファイルを選択で
きるように、SQL コマンド ファイル
をリストします。
50 ページの『既存の SQL 文の
選択』
Save
後で使用するために、現行の SQL 文
をファイルに保存します。
51 ページの『現行の SQL 文の
保存』
Info
列、インデックス、アクセス権、制
約、トリガ、状態、およびフラグメン
テーション ストラテジなどの表情報
を表示します。
52 ページの『表情報の表示』
Drop
指定された SQL コマンド ファイル
を削除します。
53 ページの『SQL 文の削除』
Exit
メイン メニューに戻ります。
なし
IBM Informix: DB-Access ユーザーズ ガイド
新規の SQL 文の入力
SQL 文を入力するには、以下の操作の 1 つを実行します。
v 「SQL」メニューの「New」オプションを選択します。 図 10 に示すように、
「NEW」画面が表示され、SQL エディタを使用していることが示されます。
NEW: ESC = Done editing
CTRL-X = Delete character
CTRL-A = Typeover/Insert
CTRL-R = Redraw
CTRL-D = Delete rest of line
-------------- mystores@dbserver1 ----------- Press CTRL-W for Help ---- 図 10. 新規の SQL 文を入力するための「NEW」画面
v ご使用のシステムにインストールされているものとは異なるエディタを使って作業し
たい場合には、「Use-editor」オプションを選択します。このオプションについては、
36 ページの『システム エディタの使用』に説明があります。
図 10 に示すように、「NEW」画面は、ヘッダの下に置かれたカーソル (画面上のテキ
ストを入力する位置を示します) から始まります。エディタを使用して、文を入力した
り、それらの文を実行する前に編集を行います。幾つかの SQL 文を一緒にまとめて文
字列にするには、それらの文をセミコロンで区切ってください。
編集キーの使用
SQL 文を入力する場合、SQL エディタ画面の上部にリストされている編集キーは、以
下の特別な機能を実行します。
CTRL-A
挿入 モードと上書き モードを切り替えます。 SQL エディタの使用
を開始したときには、自動的に上書きモードになります。
v 挿入モードでは、新規に文字を入力すると、カーソルの下のテキス
トが右にシフトします。
v 上書きモードでは、カーソルの下の文字が入力した文字で置き換え
られます。
CTRL-D
現行カーソル位置からその行の終りまでの文字を削除します。
CTRL-R
現行の画面を再表示します。このキーは、入力した SQL 文を読むこ
とが難しくなるような、電子メッセージの受信やその他の干渉があっ
た場合に使用します。
CTRL-X
カーソルが置かれた位置にある文字を削除します。
Esc
SQL 文の入力または編集が終了したときに、「SQL」メニューに戻り
ます。その後、その文を実行または編集したり、さらに大規模に編集
するためにシステム エディタを選択することができます。
第 3 章 「Query-language」オプション
39
矢印キーおよびカーソル移動キーについて詳しくは、24 ページの『DB-Access でのキー
ボードの使用』を参照してください。
編集に関する制約事項
以下の 2 つの制約事項で示すように、SQL エディタは、1 行に 80 文字までしか表示
できず、行の折り返しも行いません。
v 1 行の文字数が 80 桁目を超えている既存のコマンド ファイルを選択した場合、
DB–Access は、80 桁目に % 記号を表示して、オーバーフローしていることを示し
ます。 % 記号を超える文字は見ることができませんが、文は正常に実行されるはず
です。
v 行が 80 桁目を超える文字数を新規のコマンド ファイルに入力すると、DB–Access
は、80 桁目以内にある文字をすべて上書きしてしまいます。ユーザはオーバーフロ
ーしたことがわからず、文は正しく実行されません。
完全なテキストが画面に表示されるようにするには、各行の最初の 80 文字以内の論理
位置で Enter キーを押してください。長い文字 (CHAR) 型列への挿入のように、80 文
字を超える引用符付き文字列を入力する必要がある場合は、SQL エディタではなくシス
テム エディタを使用してください。
テキスト内にコメントを組み込みたい場合は、以下のようにします。
v ANSI 標準準拠のデータベースの場合、二重ダッシュを使用します。
v 各コメント行の先頭に、二重ダッシュ (--) コメント標識を付けます。このコメント標
識は、行全体に有効です。
v ANSI 標準準拠でないデータベースには、中括弧 ({ }) を使用します。コメント標識
全体を中括弧で囲んでください。
SQL エディタを使用する場合は、必要な行数だけテキストを入力することができます。
画面のサイズに制限はありませんが、ご使用のシステムのメモリ制約または 64 KB と
いう SQL 文の最大サイズによって制限される場合があります。
1 画面が保持できるより多くの行数を挿入すると、SQL エディタは、ページをスクロー
ルダウンして追加のテキストを表示します。現行ページの開始行番号と終了行番号は、
図 11 に示されるように、テキスト入力画面の 4 行目に表示されます。
NEW: ESC = Done editing
CTRL-X = Delete character
CTRL-A = Typeover/Insert
CTRL-R = Redraw
CTRL-D = Delete rest of line
-- 3 to 20 of 20 ---- mystores@dbserver1 ------- Press CTRL-W for Help ----
図 11. スクロールした SQL 文のテキスト入力画面
40
IBM Informix: DB-Access ユーザーズ ガイド
新規の 1 つまたは複数の SQL 文の入力を完了したら、Esc キーを押して「SQL」メニ
ューに戻ります。
警告: 入力した文を保存するための「Save」オプションを使用していない場合、SQL エ
ディタ をクリアするようなオプション (「New」または「Choose」など) を次回
に選択すると、それらの文は削除されてしまいます。
SQL 文の実行
エディタ画面を終了した後で、図 12 に示すように、「Run」オプションが強調表示さ
れ、画面の下部に文のテキストが表示された「SQL」メニューが再表示されます。
SQL: New Run Modify Use-editor
Run the current SQL statements.
Output
Choose
Save
Info
Drop
Exit
--------------- mystores@dbserver1 ----------- Press CTRL-W for Help ----CREATE TABLE mystock
(
stock_num
SMALLINT,
manu_code
CHAR(3),
description
CHAR(15),
unit_price
MONEY(6),
unit
CHAR(4),
unit_descr
CHAR(15),
PRIMARY KEY (stock_num, manu_code) CONSTRAINT
FOREIGN KEY (manu_code) REFERENCES manufact
)
stock_man_primary,
図 12. 実行可能な SQL 文のテキストが表示された「SQL」メニュー
「Run」オプションを選択するには、Enter キーまたは R キーを押します。DB–Access
はまず、それぞれの文をチェックして、SQL 構文および使用ルールに準拠しているかど
うかを確認します。文に構文上の間違いがなければ、DB–Access はそれらの文を処理し
ます。
ヒント: DBANSIWARN 環境変数を設定するか、または -ansi オプションを指定して
DB–Access を起動した場合、SQL 文の ANSI 互換性をチェックできます。
「Run」オプションでサポートされる文
表 3 に、「Run」オプションを使用して実行できる文をリストしています。
表 3. 「Run」オプションで実行できる SQL 文
オプション
SQL 文
ALTER FRAGMENT
XPS
IDS
*
*
第 3 章 「Query-language」オプション
41
表 3. 「Run」オプションで実行できる SQL 文 (続き)
オプション
SQL 文
XPS
ALTER INDEX
*
ALTER TABLE
*
*
BEGIN WORK
*
*
CLOSE DATABASE
*
*
COMMIT WORK
*
*
CONNECT
*
*
CREATE CAST
CREATE DATABASE
*
*
CREATE DISTINCT TYPE
*
*
CREATE DOMAIN
*
*
CREATE FRAGMENT
*
*
CREATE INDEX
*
*
CREATE OPAQUE TYPE
*
CREATE OPCLASS
*
CREATE FUNCTION
*
CREATE PROCEDURE
*
*
CREATE ROLE
*
CREATE ROW TYPE
*
CREATE SCHEMA
*
*
CREATE SYNONYM
*
*
CREATE TABLE
*
*
CREATE TRIGGER
*
CREATE VIEW
*
*
DATABASE
*
*
DELETE
*
*
DISCONNECT
*
*
DROP CAST
DROP DATABASE
*
*
DROP DISTINCT TYPE
42
IDS
*
*
DROP DOMAIN
*
*
DROP INDEX
*
*
IBM Informix: DB-Access ユーザーズ ガイド
表 3. 「Run」オプションで実行できる SQL 文 (続き)
オプション
SQL 文
XPS
IDS
DROP OPAQUE TYPE
*
DROP OPCLASS
*
DROP FUNCTION
*
DROP PROCEDURE
*
*
DROP ROLE
*
DROP ROW TYPE
*
DROP SYNONYM
*
*
DROP TABLE
*
*
DROP TRIGGER
*
DROP VIEW
*
*
EXECUTE PROCEDURE
*
*
EXECUTE FUNCTION
GRANT
*
*
GRANT FRAGMENT
*
*
INFO
*
*
INSERT
*
*
LOAD
*
*
LOCK TABLE
*
*
OUTPUT
*
*
RENAME COLUMN
*
*
RENAME DATABASE
*
*
RENAME TABLE
*
*
REVOKE
*
*
REVOKE FRAGMENT
*
ROLLBACK WORK
*
*
SELECT
*
*
SET
*
*
SET DATASKIP
*
*
SET DEBUG FILE TO
*
*
SET EXPLAIN
*
*
SET ISOLATION
*
*
第 3 章 「Query-language」オプション
43
表 3. 「Run」オプションで実行できる SQL 文 (続き)
オプション
SQL 文
XPS
IDS
SET LOCK MODE
*
*
SET LOG
*
*
SET OPTIMIZATION
*
*
SET PDQPRIORITY
*
*
SET OPTIMIZATION
*
*
SET TRANSACTION
*
*
START VIOLATIONS TABLE
*
*
STOP VIOLATIONS TABLE
*
*
UNLOAD
*
*
UNLOCK TABLE
*
*
UPDATE
*
*
UPDATE STATISTICS
*
*
光ディスク記憶サブシステム用の追加の文については、「IBM Informix: Optical
Subsystem Guide」を参照してください。
ヒント: リストにない文を実行するには、「SQL」メニュー オプションの「New」(また
は「Use-editor」) と「Save」を使用して、それらの文の入力と保存を行った
後、保存されたファイルをコマンド行から実行します。
正常終了の結果の表示
問合せ以外の文が正常に完了した場合、画面の下部にメッセージが表示されます。 図
12 に示す文の場合、以下のメッセージが表示されます。
表を作成しました。
SELECT 文で「Run」オプションを使用し、その SELECT 文が正常に実行されると、
DB–Access により、ヘッダの下に要求された結果が表示されます。問合せで、1 画面に
収容できるより多くの行を取得した場合、結果の画面は、図 13 に示すように、上部に
メニューが表示されます。
44
IBM Informix: DB-Access ユーザーズ ガイド
RUN: Next Restart Exit
Display the next page of query results.
------------------ mystores@dbserver1 -------------- Press CTRL-W for Help -----customer_num
call_dtime
user_id
call_code
call_descr
res_dtime
res_descr
106
1997-06-12 08:20
maryj
D
Order was received, but two of the cans of ANZ tennis balls within
the case were empty
1997-06-12 08:25
Authorized credit for two cans to customer, issued apology. Called
ANZ buyer to report the QA problem.
customer_num
call_dtime
user_id
call_code
call_descr
res_dtime
res_descr
110
1997-07-07 10:24
richc
L
Order placed one month ago (6/7) not received.
1997-07-07 10:30
Checked with shipping (Ed Smith). Order sent yesterday- we were
waiting for goods from ANZ. Next time will call with delay if
necessary.
図 13. 追加の問合せ結果を表示するためのメニュー
以下のようにして、出力の画面を進めます。
v 画面を進めて、選択された行全体を表示するには、「Next」オプションを強調表示さ
せ、Enter キーを押します。データの最後の画面には、下部にメッセージが表示さ
れ、問合せで戻された行数を示します。
v 問合せ出力の最初の画面に戻るには、「Restart」を選択します。
v 出力表示を終了して「SQL」メニューに戻るには、「Exit」を選択します。最後の出
力画面に達する前に終了すると、画面の下部のメッセージで、問合せが中断したこと
を示します。
エラーが発生した場合の動作
SQL 文に構文上の間違いまたはタイプミスがある場合、DB–Access はその文を処理し
ません。その代わりに、エラーを記述するメッセージを付加したその文のテキストを表
示し続けます。例えば、構文エラーが発生した場合は、次のメッセージが画面の下部に
表示されます。
201: 構文エラーが発生しました。
実行エラーまたはランタイム エラーが発生した場合、DB–Access は文の処理を続け、
エラー メッセージを戻します。例えば、すでに作成済みの表を作成しようとすると、次
のメッセージが画面の下部に表示されます。
310: 表 (mavis.mystock) はすでにデータベース内に存在しています。
第 3 章 「Query-language」オプション
45
複数の SQL 文を含む文を実行しようとすると、即時にはエラー・メッセージが表示さ
れないことがあります。例えば、最初の文は正しく実行される SELECT 文であり、次
の文にタイプミスが含まれている場合、2 番目の文のエラー メッセージの前に、最初の
文で取得したデータが表示されます。
DB–Access は、エラーを検出すると、エラーの原因となった文をユーザが編集する機会
を与えます。「SQL」メニューで「Modify」オプションが強調表示されていると、処理
が停止します。以下の方法の 1 つを選択して、文を訂正してください。
v Enter キーを押して「Modify」を選択して、SQL エディタに戻る。
v 「Use-editor」オプションを選択して、好みのデフォルト エディタを使用する。
SQL 文の修正
実行しようとしている SQL 文に DB–Access がエラーを検出すると、図 14 に示すよう
に、「SQL」メニューで「Modify」オプションが強調表示され、現在の文のテキストと
エラー メッセージが表示されます。
SQL: New Run Modify Use-editor Output Choose Save
Modify the current SQL statements using the SQL editor.
Info
Drop
Exit
------------------ mystores@dbserver1 -------------- Press CTRL-W for Help -----CREATE TABLE mystock
(
stock_num
SMALLINT,
manu_code
CHAR(3),
description
CHAR(15)
unit_price
MONEY(6),
unit
CHAR(4),
unit_descr
CHAR(15),
PRIMARY KEY (stock_num, manu_code) CONSTRAINT
FOREIGN KEY (manu_code) REFERENCES manufact
)
stock_man_primary,
201: A syntax error has occurred.
図 14. 修正すべき SQL 文のテキストが表示された「SQL」メニュー
Enter キーを押すと、DB–Access が SQL エディタを呼び出し、カーソルを最初のエラ
ーの行に置きます。 SQL エディタを使用してエラーを訂正するか、または Esc キーを
押して「SQL」メニューに戻り、「Use-editor」オプションを選択し、システム エディ
タを使用して文を編集することができます。終了するには、以下のステップの 1 つを実
行します。
v SQL エディタを使用して変更を行っている場合、文の編集が終了したら Esc キーを
押します。
v システム エディタを使用して変更を行っている場合、そのエディタの規則に従って
ファイルを終了します。
46
IBM Informix: DB-Access ユーザーズ ガイド
すると「SQL」メニューに戻るので、そこで Enter キーを押して、文を再び実行するこ
とができます。
その SQL 文が新規である場合は、画面は空白になります。「Choose」オプションを使
用してこの文の変更または呼び出しを行いたい場合は、SQL 文のテキストが画面に表示
されます。
SQL 文の実行中にエラーが発生した場合、編集画面には、原因と思われる部分へのポイ
ンタがあるエラー メッセージが含まれます。 図 15 に、構文エラーの後に、エディタ
画面がどのようになるかを示します。この例で使用したエディタは、SQL 文に割り当て
られた一時ファイルの名前を表示します。
CREATE TABLE mystock
(
stock_num
manu_code
description
unit_price
SMALLINT,
CHAR(3),
CHAR(15)
MONEY(6),
^
#
#201:A syntax error has occurred
#
unit
CHAR(4),
unit_descr
CHAR(15),
PRIMARY KEY (stock_num, manu_code) CONSTRAINT
FOREIGN KEY (manu_code) REFERENCES manufact
)
stock_man_primary,
“tmp/rsqa02775.err” 11 lines, 132 characters
図 15. 訂正すべき SQL 文のテキストが表示された一時テキスト編集ファイル
テキストを訂正します。1 つまたは複数の SQL 文の入力または修正が終了したら、通
常通りにエディタを終了してください。「Run」オプションが強調表示されて、「SQL」
メニューが再表示されます。文のテキストが、画面の下半分に表示されます。
Enter キーを押して文を実行するか、または別のメニュー オプションを選択して、文を
コマンド ファイルに保存するか、その文の出力先を指定します。
問合せ結果の出力先の変更
通常、SELECT 文からの出力は、画面に表示されます。その代わりに、「SQL」メニュ
ーの「Output」オプションを使用して、問合せ結果をプリンタに送るか、それらの結果
をシステム ファイルに格納するか、またはプログラムにパイピングすることができま
す。このオプションは、SQL 文 OUTPUT と同じ目的を持つものです。
第 3 章 「Query-language」オプション
47
SELECT 文は、現行の文として画面上になければなりません。次に、「SQL」メニュー
から「Output」オプションを選択でき、それによって、図 16 に示すような「OUTPUT」
メニューが表示されます。
OUTPUT: Printer
New-file Append-file
Send query results to a printer.
To-pipe
Exit
---------------- mystores@dbserver1 ---------- Press CTRL-W for Help ----SELECT * FROM customer
図 16. 問合せ結果の出力先を変更する「OUTPUT」メニュー
「OUTPUT」画面から問合せ結果の出力先を変更せずに「SQL」メニューに戻るには、
割込みキーを押してください。
プリンタへの出力の送信
問合せ結果を直接プリンタに送信するには、「OUTPUT」メニューから「Printer」オプ
ションを選択します。 DB–Access は、結果をデフォルトのプリンタに送信し、取得さ
れた行数を示すメッセージを画面の下部に表示します。問合せ結果は画面には表示され
ません。DBPRINT 環境変数を設定して、デフォルト プリンタを指定することができま
す。
ファイルへの出力の送信
問合せ結果を新規のファイルに書き込んだり、結果を既存のファイルに追加したりでき
ます。ファイル名を入力するよう DB–Access からプロンプトが出されたときにパスを
指定しないと、そのファイルは、DB–Access を起動したときのディレクトリに格納され
ます。
「New-file」オプション
問合せ結果を保管するために新規ファイルを作成するには、「OUTPUT」メニューの
「New-file」オプションを選択します。 図 17 に示すような、「OUTPUT NEW-FILE」
画面が表示されます。
OUTPUT NEW-FILE >> Enter the name you want to assign to the new file, then press Return.
---------------- mystores@dbserver1 ----------- Press CTRL-W for Help -----SELECT * FROM customer
図 17. 「OUTPUT NEW-FILE」画面
48
IBM Informix: DB-Access ユーザーズ ガイド
ファイルの名前を入力して、Enter キーを押します。 DB–Access は、問合せの結果を
そのファイルに転送し、取得された行数を示すメッセージを表示します。問合せ結果は
画面には表示されません。
警告: 既存のファイルの名前を入力すると、この手順ではその既存ファイルが問合せ結
果で上書きされてしまいます。
「Append-file」オプション
既存のファイルの内容を置き換えずに、問合せ結果を既存のファイルの最後に追加する
には、「OUTPUT」メニューの「Append-file」オプションを選択します。 図 18 に示す
ような、「OUTPUT APPEND-FILE」画面が表示されます。
OUTPUT APPEND-FILE >> Enter the name of the file you want to append results to, then press Return.
---------------- mystores@dbserver1 ------------- Press CTRL-W for Help -----SELECT * FROM customer
図 18. 「OUTPUT APPEND-FILE」画面
問合せ結果を追加したい既存ファイルの名前を入力し、Enter キーを押します。
DB–Access は、問合せ結果をそのファイルの最後に追加し、取得された行数を示すメッ
セージを表示します。問合せ結果は画面には表示されません。
パイプへの出力の送信
問合せ結果をパイプへ送信したい場合は、「OUTPUT」メニューの「To-pipe」オプショ
ンを選択します。 図 19 に示すような、「OUTPUT TO-PIPE」画面が表示されます。
OUTPUT TO-PIPE >> Enter the name of the pipe you want to send results to, then press Return.
----------------- mystores@dbserver1 ------------- Press CTRL-W for Help ----SELECT * FROM customer
図 19. 「OUTPUT TO-PIPE」画面
第 3 章 「Query-language」オプション
49
出力をパイピングする、more などのターゲット プログラムを指定します。
DB–Access は、結果をそのパイプに送信します。
UNIX のみ
UNIX オペレーティング システムでは、ターゲット プログラムを実行するためのアク
セス権が必要です。
UNIX のみ の終り
既存の SQL 文の選択
51 ページの『現行の SQL 文の保存』で説明しているように、SQL 文をコマンド ファ
イルに保存した場合、いつでも、コマンド ファイルを取得して、SQL 文を実行または
編集することができます。
「SQL」メニューの「Choose」オプションを選択して、ユーザがアクセスできるコマン
ド ファイルのリストが表示された、「CHOOSE」画面を表示します。これらのファイル
には、.sql という拡張子が付いています (ただし、拡張子は表示されません)。例えば、
50 ページの図 20 は、デモンストレーション データベースに組み込まれているコマン
ド ファイルをリストしています。
CHOOSE >>
Choose a command file with the Arrow Keys, or enter a name, then press Return.
---------------- mystores@dbserver1 ----------- Press CTRL-W for Help ------alt_cat
c_state
d_trig
sel_ojoin1
c_calls
c_stock
d_view
sel_ojoin2
c_cat
c_stores
del_stock
sel_ojoin3
c_custom
c_table
ins_table
sel_ojoin4
c_index
c_trig
opt_disk
sel_order
c_items
c_type
sel_agg
sel_sub
c_manuf
c_view1
sel_all
sel_union
c_orders
c_view2
sel_group
upd_table
c_proc
d_proc
sel_join
図 20. 現行の .sql ファイルをリストしている「CHOOSE」画面
現行のデータベースが存在しない場合、リストには、カレント ディレクトリと、
DBPATH 環境変数が指定するすべてのディレクトリの中にあるすべてのコマンド ファ
イルが含められます。
50
IBM Informix: DB-Access ユーザーズ ガイド
重要: このリストには、.sql という拡張子を持つファイル名のみが含まれます。
DB–Access の外部で新規の SQL ファイルを作成し、.sql という拡張子を付けず
にそのファイルを保存した場合、そのファイルは選択するファイルのリストには
表示されません。ファイル名に .sql という拡張子を追加してから、再び「C/選
択」オプションを選択してください。
注: DB–Access は、DB–Access を開始したディレクトリにあるファイルしか認識できま
せん。 Choose コマンドの結果は空リストであるが、コマンド ファイルが存在する
ことがわかっている場合には、DB–Access を終了させ、ディレクトリを .sql ファ
イルが入っているディレクトリに変更してから、DB–Access を再起動してくださ
い。
コマンド ファイルを選択するには、矢印キーを使ってその名前を強調表示させるか、ま
たはプロンプトにそのファイルの名前を入力します。
「SQL」メニューが表示されるときに、現行の文としてコマンド ファイルの文が画面に
表示されます。これらの文を修正、実行、編集、または出力するには、該当するメニュ
ー オプションを選択します。
コマンド ファイルを選択せずに「CHOOSE」画面を終了するには、割込みキーを押して
「SQL」メニューに戻ります。
現行の SQL 文の保存
コマンド行から文を起動するため (17 ページの『コマンド ファイルの実行』を参照)、
または保存した文を「SQL」メニューの「Choose」オプションを使用して取得するため
など、後で使用するために、SQL 文をファイルに保存することができます。
現行の 1 つまたは複数の SQL 文をファイルに保存するには、「SQL」メニューの
「Save」オプションを選択します。図 21 に示すような「SAVE」画面が表示され、コマ
ンド ファイルの名前の入力を要求するプロンプトが出されます。
SAVE >> Enter the name you want to assign to the command file.
-------------------mystores@dbserver1 --------- Press CTRL-W for Help ----select max (ship_charge), min (ship_charge)
from orders;
図 21. ファイルに文を保存するための「SAVE」画面
ユーザは、ファイル名の左側の部分を割り当てます。1 ∼ 10 文字を使用してくださ
い。文字から始めて、その後は、文字、数字、およびアンダスコア (_) の任意の組合せ
第 3 章 「Query-language」オプション
51
を使用します。ファイルを保存するには、Enter キーを押します。
UNIX のみ
名前には大文字と小文字を使用できます。ただし、UNIX オペレーティング システムで
は、大文字と小文字を別のものとして扱うことに注意してください。ファイル orders
は、Orders または ORDERS と同じではありません。
UNIX のみ の終り
ファイルに文を保管するときに、ユーザが割り当てた名前に .sql という拡張子が
DB–Access によって追加されます。例えば、ファイルに cust1 という名前を指定する
と、DB–Access は、cust1.sql という名前のファイルに保管します。「CHOOSE」画面
には cust1 としてリストされますが、コマンド行からディレクトリ ファイルをリスト
すると、オペレーティング システムは同じファイルを cust1.sql として識別します。
コマンド ファイルに名前を割り当てずに「SAVE」画面を終了するには、割込みキーを
押すと、「SQL」メニューに戻ります。
表情報の表示
「SQL」メニューの「Info」オプションを使用して、表の列、インデックス、アクセス
権、参照アクセス権、制約 (参照、主キー、チェック、一意性、およびデフォルト)、ト
リガ、状態、およびフラグメンテーション ストラテジに関する情報を表示します。
「Info」オプションは、SQL 文 INFO と同じ目的を持つものです。
「INFO」メニューには、以下のオプションが表示されます。
52
オプション
目的
Columns
指定された表の列をリストし、データ 110 ページの『列情報の表
型を示し、NULL 値が使用できるかど 示』
うかを示します。
Indexes
指定された表の各インデックスの名
前、所有者、およびタイプ (一意また
は重複) をリストします。 (表示に
は、インデックスがクラスタ化されて
いるかどうか、使用されているアクセ
ス方式、およびインデックスが付いて
いる列の名前も示されます。)
Privileges
表レベルの Select、 Update、 Insert、 114 ページの『表レベルのア
クセス権の表示』
Delete、 Index、および Alter のアク
セス権を持っているユーザをリストし
ます。
IBM Informix: DB-Access ユーザーズ ガイド
説明箇所
113 ページの『インデックス
情報の表示』
オプション
目的
説明箇所
References
表レベルの References アクセス権を
持っているユーザと、それらのユーザ
がどの列を参照できるかをリストしま
す。
114 ページの『参照アクセス
権の表示』
Status
表名、表の所有者、行のサイズ (バイ
ト数)、表内の行数 (最後の UPDATE
STATISTICS 文の時点で)、行内の列
数、および表が作成された日付をリス
トします。
なし
cOnstraints
指定された表の列の参照制約、主キー
制約、チェック制約、一意性制約、お
よびデフォルト値を表示します。
115 ページの『列制約とデフ
ォルトの表示』
triGgers
指定されたトリガに関するヘッダと本
体の情報を表示します。
117 ページの『トリガの表
示』
Table
「INFO」メニューで新規の表を選択し なし
て情報を要求できるようにするため
に、「INFO FOR TABLE」メニュー
を再表示します。
Fragments
選択された表のフラグメンテーション
ストラテジを表示します。
119 ページの『表の削除』
Exit
「SQL」メニューに戻ります。
なし
メイン メニューの「Table」オプションは、「Info」オプションがある「TABLE」メニ
ューを表示します。「Info」オプションの画面は、「SQL」メニューも「TABLE」メニ
ューも同じです。「Info」オプションについて詳しくは、107 ページの『表情報の表
示』を参照してください。
表情報を要求せずに「INFO FOR TABLE」画面を終了するには、割込みキーを押しま
す。
SQL 文の削除
現行のデータベース ディレクトリには、SQL 文が入ったファイルが格納されていま
す。これらのファイルの一部は、デモンストレーション データベースと一緒にインスト
ールされている場合があります。そのディレクトリに、ユーザがその他のファイルを作
成し、「SQL」メニューの「Save」オプションを使用して書き込んでいる場合がありま
す。追加のファイルは、DB–Access と一緒に各国語のサプリメントをインストールした
場合に使用可能になります。
第 3 章 「Query-language」オプション
53
現行のデータベース ディレクトリからコマンド ファイルを削除するには、「SQL」メ
ニューの「Drop」オプションを選択します。 図 22 に示すように、現行データベース内
のコマンド ファイルのアルファベット順のリストがある「DROP COMMAND FILE」
画面が表示されます。
DROP COMMAND FILE >>
Enter the name of the sql command file you wish to drop from the database.
------------- stores_demo@dbserver1 ----------- Press CTRL-W for Help ----alt_cat
c_state
d_trig
sel_ojoin1
c_calls
c_stock
d_view
sel_ojoin2
c_cat
c_stores
del_stock
sel_ojoin3
c_custom
c_table
ins_table
sel_ojoin4
c_index
c_trig
opt_disk
sel_order
c_items
c_type
sel_agg
sel_sub
c_manuf
c_view1
sel_all
sel_union
c_orders
c_view2
sel_group
upd_table
c_proc
d_proc
sel_join
図 22. サンプル ファイルが表示された「DROP COMMAND FILE」画面
広域言語サポート
GLS が有効である場合、DB–Access がコマンド ファイルの名前をリストする順序は、
ご使用のロケールによって変わります。
広域言語サポート の終り
削除したいコマンド ファイルの名前を入力するか、または矢印キーを使ってそのファイ
ルを強調表示させ、Enter キーを押します。 図 23 に示すように、コマンド ファイル
を削除する前に、本当に削除してよいかどうかを確認する特別のメニューが表示されま
す。
54
IBM Informix: DB-Access ユーザーズ ガイド
CONFIRM: No Yes
No, I do not want to drop it.
----------------- stores_demo@dbserver1 ----------- Press CTRL-W for Help ----alt_cat
c_state
d_trig
sel_ojoin1
c_calls
c_stock
d_view
sel_ojoin2
c_cat
c_stores
del_stock
sel_ojoin3
c_custom
c_table
ins_table
sel_ojoin4
c_index
c_trig
opt_disk
sel_order
c_items
c_type
sel_agg
sel_sub
c_manuf
c_view1
sel_all
sel_union
c_orders
c_view2
sel_group
upd_table
c_proc
d_proc
sel_join
図 23. 「DROP COMMAND FILE」確認メニュー
誤ってコマンド ファイルを削除してしまわないように、デフォルトは「No」になって
います。強調表示されたコマンド ファイルを削除するには、Y キーを押すか、または右
矢印キーを使って「Yes」を強調表示して Enter キーを押します。 DB–Access はその
コマンド ファイルを削除して、「SQL」メニューに戻ります。
コマンド ファイルを削除せずに「DROP COMMAND FILE」画面を終了するには、N
キー、Enter キー、または割込みキーを押します。これにより、「SQL」メニューに戻
ります。
SPL ルーチンのサポート
SPL で書かれたルーチンを、「SQL」メニューから作成および実行することができま
す。
SPL ルーチンを別個のコマンド ファイルに格納し、それをアプリケーションから呼び
出すか、または独立型プログラムとして実行することができます。 SPL ルーチンを作
成した後、適切なSQL 文を使用して、そのルーチンをDB–Access 内で実行することが
できます。以下の例で、そのステップの詳細を説明します。
SQL ルーチンを作成して実行する場合:
1. ルーチンのテキストを作成するには、「NEW」画面または「Use-editor」画面に直接
入力します。 CREATE PROCEDURE 文の文ブロックの中に、ルーチンの SPL 文と
第 3 章 「Query-language」オプション
55
SQL 文を入力します。
Dynamic Server
Dynamic Server を使用する場合、ルーチンが値を戻す場合は CREATE FUNCTION
文を使用してください。
CREATE FUNCTION 文について詳しくは、「IBM Informix: SQL ガイド: 構文」を
参照してください。
Dynamic Server の終り
2. 「Run」オプションを使用してルーチンを作成し、そのルーチンを sysprocedures
システム カタログ表に登録します。
3. 「NEW」画面を使用して、実行したいルーチンの名前を指定する EXECUTE
PROCEDURE 文を入力します。
Dynamic Server
Dynamic Server を使用しており、ルーチンが CREATE FUNCTION 文を使用して作
成されている場合は、関数を実行するための EXECUTE FUNCTION 文を入力して
ください。
Dynamic Server の終り
4. 「Run」オプションを使用して、ルーチンを実行し、結果を表示します。
図 24 は、デモンストレーション データベースと一緒に提供された、c_proc.sql コマ
ンド ファイルの中のルーチンのテキストを示したものです。このルーチンを試してみる
には、「Choose」オプションを使用してから、c_proc を選択します。
Dynamic Server
Dynamic Server を使用する場合は、このルーチンが値を戻すので、c_proc.sql の中の
procedure という語を function に変更してください。
Dynamic Server の終り
データベース内にルーチンを登録するには、図 24 に示すように、「Run」オプションを
選択します。
56
IBM Informix: DB-Access ユーザーズ ガイド
SQL:
New Run
Modify
Use-editor
Output
Choose
Save
Info
Drop
Exit
Run the current SQL statements.
----------------------- mydata@mynewdb ------- Press CTRL-W for Help -------create procedure read_address (lastname char(15))
returning char(15), char(15), char(20), char(15),char(2), char(5);
define p_fname, p_city char(15);
define p_add char(20);
define p_state char(2);
define p_zip char(5);
select fname, address1, city, state, zipcode
into p_fname, p_add, p_city, p_state, p_zip
from customer
where lname = lastname;
return p_fname, lastname, p_add, p_city, p_state, p_zip;
end procedure;
図 24. 「SQL」メニューでの SPL ルーチンのテキストの表示
DB–Access は、データベース サーバがルーチンを作成したことを示すメッセージを表
示します。ルーチンを実行するには、「SQL」メニューから「New」を選択した後、該
当する EXECUTE 文を入力します。以下の例で、ユーザは、ラストネームが Pauli で
あるカスタマを要求しています。
EXECUTE PROCEDURE read_address ("Pauli")
Dynamic Server
Dynamic Server を使用する場合は、以下のように入力してください。
EXECUTE FUNCTION read_address("Pauli")
Dynamic Server の終り
「NEW」画面で EXECUTE PROCEDURE 文または EXECUTE FUNCTION 文を入力し
た後、Esc を押して「SQL」メニューに戻ります。ルーチンを実行するには、「SQL」
メニューから「Run」を選択します。図 25 に、ルーチンの実行結果を示します。
第 3 章 「Query-language」オプション
57
SQL:
New
Run
Modify
Use-editor
Output
Choose
Save
Info
Drop
Exit
Run the current SQL statements.
----------------------- mydata@mynewdb ------- Press CTRL-W for Help -------Ludwig
Pauli
213 Erstwild Court
Sunnyvale
CA
94086
図 25. 「SQL」メニューでの SPL ルーチンの実行結果
ヒント: SPL ルーチンは、システム カタログ表に実行可能フォーマットで格納されま
す。「DATABASE INFO」メニューの「Routines」オプションを使用して、現
行データベース内のルーチンのリストを表示するか、または指定したルーチン
のテキストを表示します。
関連資料
以下の関連資料は、SQL 文の Informix インプリメンテーションおよび SPL プログラ
ミング ロジックについての詳細を提供します。
v SQL 文と SPL ルーチンに関するチュートリアル情報は、「IBM Informix: SQL ガイ
ド: チュートリアル」を参照してください。
v SQL 文と SPL 文の構文と使用方法に関する参照情報は、「IBM Informix: SQL ガイ
ド: 構文」を参照してください。
v SQL システム カタログ表、データ型、および環境変数に関する参照情報は、
「IBM Informix: SQL ガイド: 参照」を参照してください。
Dynamic Server
v 拡張データ型とユーザ定義ルーチンに関する補足説明は、「IBM Informix: ユーザ定
義ルーチンおよびデータ タイプ 開発者ガイド」を参照してください。
Dynamic Server の終り
58
IBM Informix: DB-Access ユーザーズ ガイド
第 4 章 「Database」オプション
「Database」メニュー オプションの選択 . . . . .
データベースの選択 . . . . . . . . . . . .
使用可能なデータベースのリスト . . . . . . .
データベースの指定 . . . . . . . . . . .
データベースの作成 . . . . . . . . . . . .
DB 領域の指定 . . . . . . . . . . . . .
ロギングの指定 . . . . . . . . . . . . .
「CREATE DATABASE」メニューの終了 . . . .
データベース情報の表示 . . . . . . . . . . .
DB 領域の情報の取得 . . . . . . . . . .
デフォルト以外のロケール情報の取得 . . . . .
ルーチンの情報の取得 . . . . . . . . . .
異なるデータベースの選択 . . . . . . . . .
データベースの削除 . . . . . . . . . . . .
「DROP DATABASE」画面 . . . . . . . .
データベースを削除するためのユーザの決定の確認 .
データベースのクローズ . . . . . . . . . . .
関連資料 . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
60
61
61
62
62
63
63
64
64
66
66
67
69
69
69
70
70
72
本章について
本章では、「Database」オプションの使用法について説明します。以下のいずれかのア
クションを実行するには、メイン メニューから「Database」オプションを選択します。
v データベースの作成またはデータベースの選択。
現在作業しているデータベースを現行 データベースと呼びます。
v 使用可能な DB 領域やルーチンのテキストなど、データベースに関する情報の取得と
表示。
v 既存のデータベースの削除または現行データベースのクローズ。
v トランザクションのコミットまたはロール バック。
ユーザは、現行のデータベース サーバにあるデータベースのみをアクセスできます。デ
ータベース サーバを現行として選択するには、DB–Access を起動するときにデータベ
ース サーバを指定するか、「Connection」メニューを使用するか、または「SQL」メニ
ューから CONNECT 文を実行することができます。データベース サーバをユーザが明
示的に選択しないと、DB–Access は、$INFORMIXSERVER 環境変数が現行データベー
スとして指定する、デフォルトのデータベース サーバを使用します。
© Copyright IBM Corp. 1996, 2002
59
「Database」メニュー オプションの選択
図 26 に「DATABASE」メニューを示します。メイン メニューから「DATABASE」メ
ニューに到達するには、D キーを押すか、または「Database」オプションを強調表示し
て、Enter キーを押します。
DATABASE: Select Create Info
Select a database to work with.
Drop
cLose
Exit
------------------------------------------------- Press CTRL-W for Help -----
図 26. 「DATABASE」メニュー
「DATABASE」メニューには、以下のオプションが表示されます。
オプション
目的
説明箇所
Select
データベースを現行データベースに
します
63 ページの図 30
Create
新しいデータベースを作成し、その
データベースを現行データベースに
します
62 ページの『データベースの作
成』
Info
現行データベースに関する情報を表
示します
64 ページの『データベース情報の
表示』
Drop
システムからデータベースを削除し
ます
69 ページの『データベースの削
除』
cLose
現行データベースをクローズします
70 ページの『データベースのクロ
ーズ』
Exit
「DATABASE」メニューを終了し、
メイン メニューに戻ります
なし
別のデータベースが既にオープンしているときにデータベースを選択または作成する
と、DB–Access は、ユーザが選択したデータベースを現行データベースまたは新規デー
タベースにする前に、すでにオープンしているデータベースをクローズします。 71 ペ
ージの図 42 に、最初にトランザクションを終了させずに新規データベースをオープン
しようとしたときに表示される、「TRANSACTION」メニューを示します。
存在しないデータベースまたは DB–Access が探し出せないデータベースの名前を入力
すると、DB–Access はエラー メッセージを表示します。
60
IBM Informix: DB-Access ユーザーズ ガイド
データベースの選択
既存のデータベースを操作するには、「DATABASE」メニューから「Select」オプショ
ンを選択します。 図 27 に示すような、「SELECT DATABASE」画面が表示されま
す。
SELECT DATABASE >>
Select a database with the Arrow Keys, or enter a name, then press Return.
-------------------------------------------- Press CTRL-W for Help -------demodb@dbserver1
mydata@dbserver1
productn@factory
図 27. 「SELECT DATABASE」画面
「SELECT DATABASE」画面は、DB–Access コマンド行にデータベースを指定せずに
「Table」オプションまたは「Query-language」オプションを選択した場合など、データ
ベースを指定する必要があるときにも表示されます。
重要: 「SELECT DATABASE」画面では、データベースの名前は 18 文字に制限されて
います。データベース名が 18 文字より長い場合には、名前の最初の 17 文字だ
けが表示され、その後にプラス (+) 符号が付きます。 vi で完全な長い名前を表
示するには、プラス (+) 符号を入力してください。 vi を終了するには、ESC ZZ
を押します。
データベースを選択せずに、「SELECT DATABASE」画面を終了して「DATABASE」
メニューに戻るには、割込みキーを押します。
使用可能なデータベースのリスト
「SELECT DATABASE」画面が表示されたときには、使用可能なデータベースのリスト
の中の最初のデータベースが強調表示され、その後にデータベース サーバの名前が続き
ます。このリストは、データベース サーバ名の順で、さらに各データベース サーバの
データベース名の順に、アルファベット順に編成されます。「SELECT DATABASE」画
面には、最大 512 のデータベース名を表示することができます。
表示される使用可能なデータベースのリストは、特定の環境変数の設定に依存します。
例えば、以下のようになります。
v DB–Access は、現行のデータベース サーバ上と DBPATH の設定内のすべてのデー
タベースの名前を表示します。
v 複数のデータベース サーバを使用している場合、現行のデータベース サーバは
ONCONFIG 環境変数によって決定されます。
表示される使用可能なデータベースのリストは、現行の接続によっても変わります。例
えば、以下のようになります。
第 4 章 「Database」オプション
61
v 現行接続が存在しないか、または現行接続が暗黙的なデフォルト接続である場合、
DBPATH 内のすべてのデータベースが表示されます。
v 現行の明示的な接続が存在する場合、現行データベース サーバに関係する DBPATH
設定の中のすべてのデータベースが表示されます。
データベースの指定
以下のいずれかの方法を使用して、「SELECT DATABASE」画面でデータベース名を選
択することができます。
v リスト上の最初のデータベース (すでに強調表示されています) を選択するには、
Enter キーを押します。
v 矢印キーを使用してデータベースの名前を強調表示させ、Enter キーを押します。
v データベース名を入力して、Enter キーを押します。
例えば、現行のデータベース サーバ上の demodb データベースを選択するには、
demodb と入力するか、demodb@dbserver1 を強調表示させて、Enter キーを押しま
す。
別のデータベース サーバ上のデータベースを指定するには、データベース名にデータベ
ース サーバ名を組み込んでください。例えば、factory データベース サーバ上の
productn データベースを選択するには、その名前を入力するか、または
productn@factory を強調表示して、Enter キーを押します。
選択されたデータベースの名前が、画面ヘッダの下の破線上に表示されます。
データベースの作成
既存のデータベースを選択する代わりに新規データベースを作成するには、
「DATABASE」メニューから「Create」オプションを選択します。 図 28 に示すよう
な、「CREATE DATABASE」画面が表示されます。
CREATE DATABASE >> Enter the name you want to assign to the new database, then press Return.
------------------------------------------- Press CTRL-W for Help --------
図 28. 「CREATE DATABASE」画面
作成したいデータベースの名前を入力し、Enter キーを押します。
注: 「IBM Informix: SQL ガイド: 構文」に説明された構文のガイドラインに従っていれ
ば、データベースにどのような名前でも割り当てることができます。
62
IBM Informix: DB-Access ユーザーズ ガイド
別のデータベース サーバ上にデータベースを作成するには、データベース名と一緒にサ
ーバ名を指定します。「IBM Informix: SQL ガイド: 構文」に説明された、構文のガイ
ドラインに従ってください。
新規データベースに名前を付けると、図 29 に示すような「CREATE DATABASE」メニ
ューが表示されます。
CREATE DATABASE : Dbspace Log Exit
Select a dbspace for storing the database’s data.
------------------------------------------- Press CTRL-W for Help -------
図 29. 「CREATE DATABASE」メニュー
データベースを非ルート DB 領域に格納するか、データベースをバッファ付きトランザ
クション ログ機能付きで作成するかどうか、または ANSI 標準準拠データベースを作
成するかを指定することができます。
DB 領域の指定
「Dbspace」オプションを選択すると、図 30 に示すような「SELECT DBSPACE」画面
が表示されます。
SELECT DBSPACE >>
Select a dbspace with the Arrow Keys, or enter a name, then press Return.
--------------------------------------------- Press CTRL-W for Help ------rootdbs
pers_dbs
empl_dbs
図 30. 「SELECT DBSPACE」画面
DB 領域のリストから、データベース データの保管が可能な DB 領域を選択します。
デフォルトは、rootdbs またはユーザがデフォルトとして作成した DB 領域です。次
に、「CREATE DATABASE」メニューに戻ります。
ロギングの指定
トランザクション ログ機能のタイプを指定するには、「Log」オプションを選択しま
す。 図 31 に示すような、「LOG」メニューが表示されます。
LOG : None Log Buffered_log log_Mode_ansi Exit
Do not activate transaction logging.
-------------------------------------------- Press CTRL-W for Help -------
図 31. 「LOG」メニュー
「LOG」メニューには、以下のオプションが表示されます。
第 4 章 「Database」オプション
63
オプション
目的
None
トランザクション ログ機能を起動しません (デフォ
ルト)。
Log
バッファなしトランザクション ログ機能を指定しま
す。
Buffered_log
バッファ付きトランザクション ログ機能を指定しま
す。
log_Mode_ansi
バッファなしトランザクション ログ機能を使用し
て、ANSI 標準準拠データベースを作成します。
Exit
「LOG」メニューを終了し、「CREATE
DATABASE」メニューに戻ります。
「CREATE DATABASE」メニューの終了
「CREATE DATABASE」メニューを終了するときに、図 32 に示すように、新規データ
ベースの作成を確定するか、または廃棄する必要があります。
EXIT : Create-new-database Discard-new-database
Create new database
------------------------------------------------- Press CTRL-W for Help -------
図 32. CREATE DATABASE 確認画面
デフォルトは「Create-new-database」です。 Enter キーを押すと、指定されたパラメー
タを持つデータベースを作成し、それを現行データベースにして、「DATABASE」メニ
ューに戻ります。新規データベースを作成したくなければ、D キーを押すか、または右
矢印キーを使用してカーソルを「Discard-new-database」オプションに移動して、Enter
キーを押します。 DB–Access は新規データベースを作成しません。
DB 領域またはロギングの値を指定せずに終了すると、データベースに対してデフォル
トが適用されます。
データベース情報の表示
「DATABASE」メニューの「Info」オプションを使用して、DB 領域とデフォルト以外
のロケール設定値に関する情報を表示し、現行データベース内のルーチンの本体を読み
取ります。
ヒント: このメニュー オプションは、SQL 文 INFO では表示されないデータベースの
情報を提供します。
「DATABASE」メニューの「Info」オプションを選択すると、図 27 に示すような、
「SELECT DATABASE」画面が表示されます。
64
IBM Informix: DB-Access ユーザーズ ガイド
データベースを選択した後、「DATABASE INFO 」メニューが表示され、選択したデ
ータベースが破線内に示されます。
図 33 に、Extended Parallel Server および IBM Informix Dynamic Server の
「DATABASE INFO」メニューを示します。
DATABASE INFO: dBspace Nls Routine Databases
Display DBSPACE information for a database.
Exit
------------ demodb@dbserver1 ------- Press CTRL-W for Help -----
図 33. 「DATABASE INFO」メニュー
「DATABASE INFO」メニューには、以下のオプションが表示されます。
オプション
目的
説明箇所
dBspace
現行データベースの DB 領域に関す 66 ページの『DB 領域の情報の
る情報を取得します。
取得』
NLS
66 ページの『デフォルト以外の
各国語サポート (NLS) をサポート
するデータベースについて、NLS の ロケール情報の取得』
設定を表示します。このオプション
は、NLS をサポートする既存のデー
タベース バージョンとの互換性の
ために提供されています。
Procedures
現行データベース内のプロシジャを
リストします。プロシジャの本体の
中の文を表示するには、そのプロシ
ジャ名を選択します。
67 ページの『ルーチンの情報の
取得』
Routines
Dynamic Server では、「Routines」
オプションは、現行データベース内
のプロシジャと関数をリストしま
す。ルーチンの本体をテキストとし
て表示するには、そのルーチン名を
選択します。
67 ページの『ルーチンの情報の
取得』
Databases
情報を取得する、異なるデータベー
スを選択します。
69 ページの『異なるデータベー
スの選択』
Exit
「DATABASE INFO」メニューを終 なし
了して、「DATABASE」メニューに
戻ります。
現行データベースに関する情報を表示せずに「DATABASE INFO」メニューを終了する
には、割込みキーを押すと「DATABASE」メニューに戻ります。
第 4 章 「Database」オプション
65
DB 領域の情報の取得
現行データベースの DB 領域に関する情報を取得するには、図 34 に示すように、
「DATABASE INFO」メニューから「dBspace」オプションを選択します。
DATABASE INFO: dBspace Nls Routine Databases Exit
Display DBSPACE information for a database.
-------------- demodb@dbserver1 -------------- Press CTRL-W for Help ------
Id
3
Name
Number of
Chunks
When
Created
Mirror
dbspace2
1
04/28/94
N
図 34. DB 領域情報が表示された「DATABASE INFO」メニュー
デフォルト以外のロケール情報の取得
広域言語サポート (GLS) と各国語サポート (NLS) は、DB–Access でリストが表示され
る順序に影響を与えます。 GLS により、英語以外のデータの表示と適切な順序付けが
可能になります。既存のデータベース サーバのバージョンでは、この目的のために
NLS が使用されていました。
各国語サポート
現行データベースが NLS をサポートする場合、図 35 に示すように、「DATABASE
INFO」メニューの「NLS」オプションを選択して、照合順序と C CType (文字分類タイ
プ) に関する情報を表示することができます。
DATABASE INFO: dBspace Nls Routine
Display NLS information for a database.
Databases
Exit
-------------- - stores_demo ------------ Press CTRL-W for Help --------
fr_FR.88591 Collating Sequence
fr_FR.88591 C CType
図 35. NLS 情報が表示された「DATABASE INFO」メニュー
データベースが NLS をサポートしていないか、または NLS 用の環境変数を正しく設
定していない場合、エラー メッセージが表示されます。
各国語サポート の終り
66
IBM Informix: DB-Access ユーザーズ ガイド
広域言語サポート
DB–Access では、GLS 照合順序と文字分類タイプを表示するための「DATABASE
INFO」メニューのオプションは提供していません。ご使用のデータベース サーバで使
用可能になっている GLS ロケールに関する情報を取得するには、第 3 章に説明してい
るように、以下の問合せを SQL エディタを使用して入力してください。
SELECT tabname, site FROM systables
WHERE tabid = 90 OR tabid = 91
表識別子 90 の行は、COLLATION カテゴリのデータベース ロケールを格納していま
す。表識別子 91 の行は、CTYPE カテゴリのデータベース ロケールを格納していま
す。 図 36 に、デフォルト 米国英語ロケールに対する、先行する問合せの結果を示し
ます。
New Run
SQL:
Modify
Use-editor
Output
Choose
Save
Info
Drop
Exit
Run the current SQL statements.
--------------------- mydata@mynewdb ------ Press CTRL-W for Help -------tabname
site
GL_COLLATE
en_US.819
tabname
site
GL_CTYPE
en_US.819
2 row(s) retrieved
図 36. GLS 情報の取得
GLS ロケール ファイルの COLLATION カテゴリおよび CTYPE カテゴリについて詳
しくは、「IBM Informix: GLS ユーザーズ ガイド」を参照してください。
広域言語サポート の終り
ルーチンの情報の取得
ご使用のデータベース サーバ製品に応じて、選択したルーチンからのテキストを表示す
るために、「DATABASE INFO」メニューの「Procedures」オプションまたは
「Routines」オプションのいずれかを選択します。「SELECT PROCEDURE」画面また
は「SELECT ROUTINE」画面が表示され、現行データベース内の SPL ルーチンのリス
トが表示されます。
ヒント: 「Routines」オプションおよび「Procedures」オプションでは、システム作成の
ルーチンは表示されません。これらのオプションでは、ユーザ定義ルーチンと
第 4 章 「Database」オプション
67
SPL ルーチンのみが表示されます。
Dynamic Server
図 37 に、Dynamic Server を使用した場合に表示される「SELECT ROUTINE」画面を
示します。 SPL ルーチンの場合、プロンプトに異なる言い回しが使われていますが、
「SELECT PROCEDURE」画面が同じように表示されます。
SELECT ROUTINE >>
Select a routine with the Arrow Keys, or enter a name, then press Return.
--------------- demodb@dbserver1 ------------ Press CTRL-W for Help -------read_address
図 37. 「SELECT ROUTINE」画面
Dynamic Server の終り
システム カタログ内にルーチンが存在し、「DATABASE INFO」メニューに収まれ
ば、図 38 に示したように、画面にテキストが表示されます。
DATABASE INFO: read_address: dBspace Nls Routine
Display routine text for a selected routine.
Databases
Exit
--------------- demodb@dbserver1 ------------- Press CTRL-W for Help -------create procedure read_address (lastname char(15))
returning char(15), char(15), char(20), char(15), char(2), char(5);
define p_fname, p_city char(15);
define p_add char(20);
define p_state char(2);
define p_zip char(5);
select fname, address1, city, state, zipcode
into p_fname, p_add, p_city, p_state, p_zip
from customer
where lname = lastname;
return p_fname, lastname, p_add, p_city, p_state, p_zip;
end procedure
図 38. 選択されたルーチンが表示された「DATABASE INFO」メニュー
ルーチンのテキストが 1 画面に収まらなければ、図 39 に示すように、テキストの一部
が示された「DISPLAY」メニューが表示されます。
68
IBM Informix: DB-Access ユーザーズ ガイド
DISPLAY: Next Restart Exit
Display the next page of results.
----------------- demodb@dbserver1 ---------- Press CTRL-W for Help ------create procedure read_address (lastname char(15))
returning char(15), char(15), char(20), char(15),char(2), char(5);
define p_fname, p_city char(15);
define p_add char(20);
define p_state char(2);
define p_zip char(5);
図 39. ルーチンのテキストの一部が表示された「DISPLAY」メニュー
テキストの次ページを表示するには、「Next」オプションを選択します。先頭からテキ
ストを表示するには、「Restart」オプションを選択してください。
異なるデータベースの選択
異なるデータベースに関する情報を表示するには、「DATABASE INFO」メニューの
「Database」オプションを選択します。 61 ページの『データベースの選択』 に示すよ
うな「SELECT DATABASE」画面が表示され、データベースを選択することができま
す。その後、本章で説明している「DATABASE INFO」メニューの他のオプションを使
用することができます。
データベースの削除
指定したデータベース サーバの既存のデータベースを削除するには、「DATABASE」
メニューから「Drop」オプションを選択します。 図 40 に示すような、「DROP
DATABASE」画面が表示されます。
DROP DATABASE >>
Enter the name of the database you wish to drop.
-------------- demodb@dbserver1--------------- Press CTRL-W for Help -------mydata@dbserver1
demodb@dbserver1
personnel@mynewdb
図 40. 「DROP DATABASE」画面
現行データベースを削除することはできません。現行データベースは、画面のヘッダの
下の破線にその名前が表示されているデータベースです。
「DROP DATABASE」画面
データベースを削除するには、「DROP DATABASE」画面で以下のいずれかの方法を使
用します。
v データベース名を入力して、Enter キーを押します。
第 4 章 「Database」オプション
69
v 矢印キーを使用して削除したいデータベースの名前を強調表示し、Enter キーを押し
ます。
例えば、mydata データベースを削除するには、 mydata と入力するか、または矢印キ
ーを使用して mydata@dbserver1 を強調表示し、Enter キーを押します。
データベースを削除せずに「DROP DATABASE」画面を終了するには、割込みキーを押
します。これにより、「DATABASE」メニューに戻ります。
データベースを削除するためのユーザの決定の確認
データベースを削除するときに、DB–Access は、図 41 に示すように、データベースを
削除する前に、それを本当に削除してよいかどうかを確認する特別のメニューを表示し
ます。
CONFIRM:
No Yes
No, I do not want to drop it.
--------------- demodb@dbserver1 ------------- Press CTRL-W for Help -------mydata@dbserver1
demodb@dbserver1
personnel@mynewdb
図 41. DROP DATABASE 確認メニュー
デフォルトは、誤ってデータベースを削除してしまわないように「No」になっていま
す。強調表示されたデータベースを削除したければ、Y キーを押すか、または右矢印キ
ーを使用して「Yes」を強調表示して、Enter キーを押します。 DB–Access は、そのデ
ータベースとその中のすべてのデータを削除します。削除する正しいデータベースを確
実に選択しているかどうかを確認してください。
データベースのクローズ
現行データベースをクローズするには、「DATABASE」メニューから「cLose」オプシ
ョンを選択して、Enter キーを押します。下面の下部に「データベースをクローズしま
した」というメッセージが表示され、現行データベースがクローズすることを示しま
す。そのデータベース名はヘルプ行に表示されなくなりますが、データベース サーバ名
はそのまま残っています。
ヘルプ行にデータベース名がないのに「cLose」オプションを選択すると、DB–Access
によってエラー メッセージが表示されます。
70
IBM Informix: DB-Access ユーザーズ ガイド
トランザクションを開始したが、そのトランザクションをコミットまたはロール バック
していない状態で、トランザクション付きのデータベースをクローズしようとすると、
図 42 に示すような「TRANSACTION」メニューが表示されます。
TRANSACTION:
Commit Rollback
Commit the current transaction.
------------- demodb@dbserver1 --------------- Press CTRL-W for Help ------
図 42. トランザクション付きのデータベース用の「TRANSACTION」メニュー
「TRANSACTION」メニューにより、現行データベースをクローズする前に、確実にア
クティブ トランザクションのコミットまたはロール バックのいずれかを行うことがで
きます。以下に、2 つのメニュー オプションを挙げます。
v デフォルト オプションは「Commit」です。
Y キーまたは Enter キーを押すと、DB–Access はトランザクションをコミットし
て、データベースをクローズします。
v トランザクションをロール バックしたい場合には、矢印キーを使用して、
「Rollback」オプションに強調表示を移動します。
Enter キーを押すと、DB–Access は、トランザクションをロール バックして、デー
タベースをクローズします。
警告: オプションの選択には、注意してください。「Commit」オプションを選択すると
きに、希望しないトランザクションをコミットしてしまうこと、および
「Rollback」オプションを選択するときに、新しいトランザクションを失ってしま
うことがあります。
割込みキーを押すと、DB–Access は、トランザクションをコミットまたはロール バッ
クせずに、「DATABASE」メニューを表示します。
「TRANSACTION」メニューは、新規データベースをオープンしようとしたとき、また
は最初にトランザクションを終了させずに DB–Access メニュー システムを終了させよ
うとしたときにも表示されます。これらのインスタンスは、DB–Access から
「TRANSACTION」メニューをアクセスできるときのみになります。
重要: ANSI 標準準拠のデータベースでトランザクションを開始したが、COMMIT 文ま
たは ROLLBACK 文を出しておらず、非メニュー モードを使用してデータベー
スをクローズしようとすると、DB–Access により自動的にトランザクションがコ
ミットされます。トランザクションをコミットしたくない場合は、コマンド行か
ら、ROLLBACK 文と CLOSE DATABASE 文の両方を出してください。
第 4 章 「Database」オプション
71
関連資料
以下のマニュアルには、データベースの接続と作成に関する情報が含まれています。
v 構文情報については、「IBM Informix: SQL ガイド: 構文」を参照してください。
v 環境変数については、「IBM Informix: SQL ガイド: 参照」を参照してください。
広域言語サポート
v 異なるデータベース サーバでデータベースをオープンまたは接続する際に適用され
る、GLS の考慮事項については、「IBM Informix: GLS ユーザーズ ガイド」を参照
してください。
データベース サーバは、クライアント (DB–Access など) が渡すクライアント ロケ
ール情報を検証し、データベース ロケールを検査し、クライアントとデータベース
間でデータを転送するためのサーバ処理ロケールを決定します。
広域言語サポート の終り
72
IBM Informix: DB-Access ユーザーズ ガイド
第 5 章 「Table」オプション
「Table」メニュー . . . . . . . . . .
表の作成または変更 . . . . . . . . .
「CREATE TABLE」画面 . . . . . .
「ALTER TABLE」画面 . . . . . . .
スキーマ エディタの使用 . . . . . .
表への列の追加 (「Add」オプション) . .
列名 . . . . . . . . . . . .
列のデータ型 . . . . . . . . .
データの長さまたは範囲 . . . . . .
列インデックス . . . . . . . . .
列インデックスのフィル ファクタ . .
NULL 値の許可 . . . . . . . .
表の作成 (「Exit」オプション) . . . .
列の修正 (「Modify」オプション) . . .
列の削除 (「Drop」オプション) . . . .
ストレージの配置とロック (Table_options) .
DB 領域の選択 . . . . . . . . .
新規表のフラグメント化 . . . . . .
既存の表のフラグメント化の変更 . . .
DB 領域のアタッチ . . . . . . .
DB 領域の切離し . . . . . . . .
既存の表のフラグメント化 . . . . .
エクステント サイズの設定 . . . .
ロック モードの決定 . . . . . . .
行 ID の追加または削除. . . . . .
制約の定義 . . . . . . . . . . .
主キー制約の定義 . . . . . . . .
外部キー制約の定義 . . . . . . .
チェック制約の定義 . . . . . . .
一意性制約の定義 . . . . . . .
デフォルト値の定義 . . . . . . .
表情報の表示 . . . . . . . . . . .
列情報の表示 . . . . . . . . . .
DB-Access のデータ型 . . . . . .
Dynamic Server の拡張データ型 . . .
インデックス情報の表示 . . . . . .
表レベルのアクセス権の表示 . . . . .
参照アクセス権の表示 . . . . . . .
列制約とデフォルトの表示 . . . . .
参照制約の表示 . . . . . . . .
© Copyright IBM Corp. 1996, 2002
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 74
. 75
. 75
. 76
. 77
. 78
. 78
. 79
. 81
. 82
. 82
. 83
. 84
. 84
. 85
. 85
. 86
. 87
. 91
. 93
. 94
. 95
. 96
. 97
. 98
. 98
. 99
. 100
. 102
. 103
. 104
. 107
. 110
. 110
. 111
. 113
. 114
. 114
. 115
. 115
73
主キー制約およびチェック制約の表示のサンプル
トリガの表示 . . . . . . . . . . . . .
フラグメント化情報の表示 . . . . . . . .
表の削除 . . . . . . . . . . . . . . .
関連資料 . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
116
117
118
119
120
本章について
本章では、メイン メニューの「Table」オプションの機能を使用する方法について説明
します。 SQL プログラミングを行わずに、以下の表管理のタスクを実行したい場合に
は、このオプションを選択してください。
v 新規表を作成する
v 新規または既存の表のフラグメンテーション ストラテジを定義する
v 既存の表に関する情報を変更、削除、または表示する
「Table」メニュー
T キーを押すか、またはメイン メニューから「Table」オプションを選択すると、図 43
に示すような、「TABLE」メニューが表示されます。
TABLE: Create Alter
Create a new table.
Info
Drop
Exit
-------------mydata@mydbserv--------------------Press CTRL-W for Help -----
図 43. 「TABLE」メニュー
「Table」オプションを選択するときに現行データベースが存在しない場合は、
「SELECT DATABASE」画面が表示されます。現行データベース サーバに定義された
データベースのリストから選択するか、または割込みキーを押してメイン メニューを表
示します。
重要: 「SELECT DATABASE」画面では、データベースの名前は 18 文字に制限されて
います。データベース名が 18 文字より長い場合には、名前の最初の 17 文字だ
けが表示され、その後にプラス (+) 符号が付きます。 vi で完全な長い名前を表
示するには、プラス (+) 符号を入力してください。 vi を終了するには、ESC ZZ
を押します。
74
IBM Informix: DB-Access ユーザーズ ガイド
以下の表に示す「TABLE」メニュー オプションを使用します。
オプション
目的
説明箇所
Create
新規表の構造を定義することができます
75 ページの『表の作成または
変更』
Alter
既存の表の構造を変更することができま
す
75 ページの『表の作成または
変更』
Info
表の構造に関する情報を表示します
107 ページの『表情報の表示』
Drop
データベースから表を削除します
119 ページの『表の削除』
Exit
DB-Access メイン メニューに戻ります
なし
表の作成または変更
「TABLE」メニューの「Create」オプションは、CREATE TABLE 文の機能をガイドす
るメニューを提供します。「Alter」オプションは、ALTER TABLE 文または ALTER
FRAGMENT 文の機能をガイドするメニューを提供します。
「CREATE TABLE」画面
「TABLE」メニューの「Create」オプションを選択すると、図 44 に示すような、
「CREATE TABLE」画面が表示されます。
CREATE TABLE >> Enter the table name you wish to create with the schema editor.
---------------- mydata@mydbserv ------------- Press CTRL-W for Help ------
図 44. 「CREATE TABLE」画面
プロンプトで新規表の名前を入力して、Enter キーを押します。「IBM Informix: SQL
ガイド: 構文」に説明されたデータベース オブジェクトの命名のガイドラインに従って
いれば、表にどのような名前でも割り当てることができます。
新規表の名前を入力した後、図 45 に示すような、「CREATE TABLE」メニューが表示
されます。
CREATE TABLE clients: Add Modify Drop Screen Table_options Constraints Exit
Adds columns to the table above the line with the highlight.
---- Page 1 of 1 ---- mydata@mydbserv ------------ Press CTRL-W for Help ----Column Name
Type
Length
Index Nulls
図 45. 「CREATE TABLE」メニュー
第 5 章 「Table」オプション
75
「ALTER TABLE」画面
「TABLE」メニューの「Alter」オプションを選択すると、図 46 に示すように、
「ALTER TABLE」プロンプトと、現行データベースに定義された表のリストが表示さ
れます。
ALTER TABLE >>
Enter the table name you wish to alter with the schema editor.
---------------- mydata@mydbserv ------------- Press CTRL-W for Help -----customer
items
orders
図 46. 「ALTER TABLE」プロンプト
変更したい表の名前をプロンプトの後に入力するか、または矢印キーを使用して、リス
ト内の表名を強調表示します。 Enter キーを押した後、図 47 に示すような、「ALTER
TABLE」メニューと表のスキーマが表示されます。
ALTER TABLE clients: Add Modify Drop Screen Table_options Constraints Exit
Adds columns to the table above the line with the highlight.
--- Page 1 of 1 --- mydata@mydbserv ----------- Press CTRL-W for Help ----Column Name
customer_num
fname
lname
company
Type
Length
Serial
Char
Char
Char
15
15
20
101
Index
Nulls
Unique
No
Yes
Yes
Yes
図 47. 「ALTER TABLE」メニュー
重要: 正常に表を変更するためには、Alter アクセス権が必要です、このアクセス権がな
い場合、「ALTER TABLE」画面からメニューを使用することはできますが、
「EXIT」画面から「Build-new-table」を選択しようとすると、エラーになりま
す。 Alter アクセス権と他の表レベルのアクセス権に関する説明については、74
を参照してください。
LOAD 文を使用してデータを表に挿入するには、その表に対する Insert アクセス
権と Select アクセス権の両方が必要です。データを表に挿入する前に、列に関す
る SELECT 情報を DB–Access が読み取る必要があるため、Select アクセス権が
必要になります。 Select アクセス権がない場合、LOAD コマンドは失敗し、エ
ラー メッセージ -272「選択許可がありません」を受け取ります。 Select アクセ
ス権はあるが、Insert アクセス権は持っていないという場合には、エラー -275
「挿入許可がありません」を受け取ります。
76
IBM Informix: DB-Access ユーザーズ ガイド
スキーマ エディタの使用
「CREATE」メニューと「ALTER TABLE」メニューの両方に、以下の表に示す同じオ
プションがあります。
オプション
目的
説明箇所
Add
スキーマ エディタを表示し、そこ
から新列を表に追加できます。
78 ページの『表への列の追加
(「Add」オプション)』
Modify
「Add」オプションを使用して定義
された列を表示し、表を作成する前
に、列構造を修正することができま
す。
84 ページの『列の修正
(「Modify」オプション)』
Drop
表から既存の列を削除します。
85 ページの『列の削除
(「Drop」オプション)』
Screen
スキーマ エディタにおいて、列定
義の次の画面を表示します。
なし
Table_options
新規表の格納領域を表示して、ユー
ザが選択できるようにします。新規
表のフラグメンテーション ストラ
テジを設定するための選択肢を表示
します。新規表のエクステント サ
イズとロック モードの設定を可能
にします。既存のフラグメント表の
行 ID の追加または削除を行いま
す。
85 ページの『ストレージの配置
とロック (Table_options)』
Constraints
主キー制約、外部キー制約、チェッ
ク制約、および一意性制約を定義可
能にします。デフォルト列値を設定
可能にします。
98 ページの『制約の定義』 104
ページの『デフォルト値の定
義』
Exit
他のオプションを使用して記述した 84 ページの『表の作成
スキーマと構造の作成、再作成、ま (「Exit」オプション)』
たは廃棄の後で、「TABLE」メニュ
ーに戻ります。
重要: 矢印キーはスキーマ エディタ内でのカーソル移動を制御するものであるため、メ
ニュー オプション間の移動には、スペース キーを使用する必要があります。
表を作成または変更せずに、「CREATE TABLE」メニューまたは「ALTER TABLE」メ
ニューを終了して「TABLE」メニューに戻るには、割込みキーを押します。
第 5 章 「Table」オプション
77
表への列の追加 (「Add」オプション)
表に新しい列を追加するには、破線の下部に表示されるスキーマ エディタで新しい行を
定義します。表の列を作成または変更する場合、スキーマ エディタにより、ユーザを援
助するプロンプトが出されます。
重要: 「ALTER TABLE」メニューから「Add」オプションを使用する前に、スキーマ
エディタ内の新しい 1 つまたは複数の列を挿入したい場所を示す位置を強調表示
する必要があります。表示された列内で強調表示を移動するには、上矢印キーと
下矢印キーを使用します。画面上でさらに列リストをスクロールするには、メニ
ューの「Screen」オプションを使用します。「Add」オプションを選択すると、強
調表示された行が下方に移動し、新しい列用の空行が作られます。
スキーマ エディタでは、左から右に進行して、それぞれの列ごとに、左側にその列の名
前を持つ、水平方向の記述行が 1 行作成されます。それぞれのフィールドに強調表示を
移動するには、右矢印キーを使用します。それぞれのフィールドのデフォルト入力を受
け入れるには、Enter キーまたは矢印キーを押します。
1 つの列が終了すると、別の列名を入力することができるよう、カーソルが 1 つ下の行
に移動します。このようにして、その表を形成する列が、縦方向にリストされます。
次の行に移動する前に、以下のいずれかの方法で、いずれのフィールドでも変更または
バイパスすることができます。
v 左矢印キーを使用して、現在行上のすでに通過したフィールドに戻ります。
v 割込みキーを押して、現行 (強調表示された) フィールドに値を挿入せずに、プロン
プトをキャンセルします。
カーソルを別の行に移動した後では、84 ページの『列の修正 (「Modify」オプショ
ン)』に説明するように、「CREATE TABLE」メニューの「Modify」オプションを使用
して入力を変更しなければなりません。
列名
「CREATE TABLE」(または「ALTER TABLE」) メニューの「Add」オプションは、カ
ーソルを空行に置いて、「ADD COLUMN NAME」プロンプトを表示します。「ADD
COLUMN NAME」プロンプトの後に列の名前を入力して、Enter キーを押します。
「IBM Informix: SQL ガイド: 構文」に説明された識別子構文のガイドラインに従って
いれば、どのような名前でも割り当てることができます。
DB–Access は、図 48 に示すように、指定された名前を「列名」の下に入力します。
78
IBM Informix: DB-Access ユーザーズ ガイド
ADD COLUMN NAME >>
Enter column name.
RETURN adds it.
INTERRUPT returns to CREATE/ALTER menu.
---- Page 1 of 1 ---- mydata@mydbserv ---------- Press CTRL-W for Help ---Column Name
customer_num
Type
Length
Index Nulls
図 48. 列名が入力された「ADD COLUMN NAME」画面
列のデータ型
「ADD TYPE」メニューは、図 49 に示すように、さまざまなデータ型を表示します。
ADD TYPE clients : Char Numeric Serial Date Money date-Time ...
Permits any combination of letters, numbers, and punctuation.
---- Page 1 of 1 ----- mydata@mydbserv ---------- Press CTRL-W for Help ---Column Name
customer_num
Type
Length
Index Nulls
図 49. 列のデータ型を定義するための「ADD TYPE」メニュー
列のデータ型を選択するには、データ型の先頭の大文字を大文字または小文字のいずれ
かを使用して入力するか、またはスペース キーを使用してそのデータ型を強調表示し
て、Enter キーを押します。
重要: スペース キーを使用して、選択項目を移動してください。矢印キーは、画面の下
部でのカーソル移動を制御するために使用します。
Dynamic Server
「CREATE TABLE」メニューは、組込みデータ型に対するオプションを提供します。
スマート ラージ オブジェクト、ユーザ定義データ型 (不透明データ型)、またはコレク
ション (COLLECTION) 型など、拡張データ型の 1 つを使用して列を定義するには、
「SQL」メニューを使用して、CREATE TABLE 文の入力と実行を行います。
Dynamic Server の終り
次のデータ型カテゴリの 1 つを「ADD TYPE」メニューから選択した場合、DB–Access
は、そのカテゴリのサブメニューを 1 つまたは 2 つ表示します。
第 5 章 「Table」オプション
79
「ADD TYPE」
カテゴリ
データ型サブメニュー
Numeric
Integer
追加のサブメニュー
Smallint
Decimal
Smallfloat または Float
Float
Char
Char (C を押して選択する)
Nchar (N を押して選択する)
Variable-length
Varchar (V を押して選択する)
Varchar
Nvarchar (N を押して選択する)
Text または Byte
Table
Blobspace
ヒント: 上記のデータ型の一部は、メニュー モードには含まれていませんが、どのデー
タ型でも非メニュー モードで対話式に使用することができます。
ロケール文字データ: デフォルト ロケールで文字データを使用する場合、固定長の
データには「Char」を選択し、表のその列に可変長の項目がある場合には「Varchar」を
選択します。
広域言語サポート
デフォルト以外のロケールを使用する場合、固定長には「Nchar」を選択し、可変長には
「Nvarchar」を選択します。
広域言語サポート の終り
ラージ オブジェクトの格納域:
可変長テキスト (VARIABLE-LENGTH TEXT) 型
またはバイト (BYTE) 型を選択する場合、そのラージ オブジェクトをどこに置くかを
指示するために、以下の操作の 1 つを実行してください。
v 「Table」を選択して、データ ディレクトリ全体を列に格納する。
Extended Parallel Server
Extended Parallel Server にあるデータベースに対しては、常に「Table」を選択してく
ださい。
Extended Parallel Server の終り
80
IBM Informix: DB-Access ユーザーズ ガイド
v 「Blobspace」を選択して、実際の TEXT または BYTE データをラージ オブジェク
ト領域 (BLOB 領域) に格納する。これにより、表の列に、BLOB 領域の格納場所が
保持されます。
DB–Access は、図 50 に示すような、「SELECT BLOBSPACE」画面を表示します。
矢印キーを使用してアルファベット順のリストから BLOB 領域を選択するか、また
は画面の上部に BLOB 領域の名前を入力します。
SELECT BLOBSPACE >>
Select a blobspace with the Arrow Keys, or enter a name, then press Return
----- Page 1 of 1 ------ mydata@mydbserv ------- Press CTRL-W for Help -----cust_blob
図 50. 可変長データを保管するための「SELECT BLOBSPACE」画面
データの長さまたは範囲
以下のデータ型のいずれかを列について選択すると、新しい「ADD」画面が表示されま
す。「Length」フィールドに、該当する情報を入力してください。
データ型
長さまたは範囲
文字 (CHAR) 型
長さを入力します (デフォルトは 20)。
各国語文字 (NCHAR) 型
長さを入力します (デフォルトは 20)。
10 進数 (NUMERIC) 型
固定小数点形式の 10 進数 (DECIMAL) 型の場合、精度と小数点以下
桁数を入力します (デフォルトは 16, 2)。浮動小数点形式の 10 進数
(DECIMAL) 型の場合、精度のみを入力します。
シリアル (SERIAL) 型
開始番号を入力します (デフォルトは 1)。
金額 (MONEY) 型
長さを指定します (デフォルトは 16, 2)。
日時 (DATETIME) 型
先頭から最後までの日時修飾子を指定します。
時間隔 (INTERVAL) 型
先頭から最後までの間隔修飾子を指定します。
可変長文字 (VARCHAR) 型
最大長 (1 ∼ 255 バイト) および最小領域 (0 ∼ 255 バイト) を指定
します。
第 5 章 「Table」オプション
81
各国語可変長文字 (NVARCHAR) 型
最大長 (1 ∼ 255 バイト) および最小領域 (0 ∼ 255 バイト) を指定
します。
列インデックス
DB–Access では、クラスタ化されていない、昇順の B ツリー列インデックスのみを構
築することができます。 図 51 に示す「ADD INDEX」メニューでこのタイプのインデ
ックスを作成するためには、「Yes」オプションを選択します。
ADD INDEX
clients : Yes No
Specifies that this column will NOT have an index.
----- Page 1 of 1 ----- mydata@mydbserv ----------- Press CTRL-W for Help ---Column Name
Type
customer_num
Serial
Length
101
Index Nulls
図 51. 「ADD INDEX」メニュー
DB–Access は、「ADD DUPLICATES」画面を表示します。 Enter キーまたは Y キー
を押して重複値を許容すると、「Index」フィールドに「Dups」という語が表示されま
す。重複値を防ぐためには、N キーを押します。「Unique」という語が「インデック
ス」フィールドに表示されます。
DB–Access は、図 52 に示すような、「ADD FILL FACTOR PERCENTAGE」画面を表
示します。
この列の値にインデックスを作成したくない場合、または、R ツリー インデックスな
ど、他のタイプのインデックスにしたい場合は、「No」オプションを選択してくださ
い。 R ツリー インデックスは、SQL を使用して直接作成する必要があります。
列インデックスのフィル ファクタ
図 52 に示すような「ADD FILL FACTOR PERCENTAGE」画面を使用して、単一の列
にインデックスを作成するときのフィル ファクタのパーセントを設定します。
「Index」列には、フィル ファクタと、「Unique」または「Dups」の省略形である U ま
たは D が表示されます。
82
IBM Informix: DB-Access ユーザーズ ガイド
ADD FILL FACTOR PERCENTAGE >>
Enter the fill factor percentage. RETURN adds it.
----- Page 1 of 1 -------personnel ------------- Press CTRL-W for Help ----Column Name
empl_num
70%
No
last_name
insurance
ss_num
Type
Length
Nulls
U
Integer
Char
Integer
Integer
Index
20
D 90%
Dups
Unique
No
Yes
No
図 52. 「ADD FILL FACTOR PERCENTAGE」画面
重要: 新規インデックスを作成する 場合にのみフィル ファクタを設定できます。フィ
ル ファクタは、「CREATE TABLE」メニューの「Modify」オプションを使用し
て修正することができます。ただし、そのインデックスに対する表が作成された
後では、「ALTER TABLE」メニューを使用して変更することはできません。
任意の正の値を入力してください (最大値 100)。 1 より小さい値、または 100 より大
きい値は、エラーになります。
値を入力せずに Enter キーを押すと、インデックスは、データベース サーバの
ONCONFIG ファイルの中に設定されたフィル ファクタのパーセントになります。
ONCONFIG にフィル ファクタの設定がない場合は、インデックスは、デフォルトのフ
ィル ファクタ値である 90 % になります。
NULL 値の許可
図 53 に示すような「ADD NULL」メニューで、列が NULL 値を許容するかどうかを
指定します。
ADD NULLS
clients : Yes No
Permits null values in this column.
---- Page 1 of 1 ----- mydata@mydbserv --------- Press CTRL-W for Help ---Column Name
Type
Length
customer_num
Serial
101
Index Nulls
Unique 図 53. 「ADD NULL」メニュー
列内の NULL 値を許容するには「Yes」を選択し、列が常に非 NULL 値を持つことを
強制するには「No」を選択します。
別の列定義を表に追加するか、または「CREATE TABLE」メニューに戻るには、割込
みキー、矢印キー、または Enter キーを押します。
第 5 章 「Table」オプション
83
表の作成 (「Exit」オプション)
新規 (または修正された) 表のスキーマを完了したら、「CREATE TABLE」(または
「ALTER TABLE」) メニューの「Exit」オプションを選択します。 DB–Access は、図
54 に示すようなメニューを表示します。
CREATE TABLE clients: Build-new-table Discard-new-table
Builds a new table and returns to the Table Menu.
----- Page 1 of 1 ---- mydata@mydbserv --------- Press CTRL-W for Help ---Column Name
Type
customer_num
fname
lname
company
address1
address2
city
state
zipcode
phone
Serial
Char
Char
Char
Char
Char
Char
Char
Char
Char
Length
101
15
15
20
20
20
15
2
5
18
Index
Nulls
Unique No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Dups
Yes
Yes
図 54. 「CREATE TABLE」メニュー
表示された列を含む表を作成し、「TABLE」メニューに戻るには、「Build-new-table」
を選択します。新規または修正された表定義を保存せずに「TABLE」メニューに戻るに
は、「Discard-new-table」を選択してください。
列の修正 (「Modify」オプション)
既存の列を修正するには、以下の手順を実行します。
1. 矢印キーを使用して、修正したい列定義を強調表示します。
2. 必要なら、スキーマ エディタ内の列定義の次画面を表示するために、「CREATE
TABLE」メニューから「Screen」を選択します。
3. 「CREATE TABLE」(または「ALTER TABLE」) メニューの「Modify」オプション
を選択して、Enter キーを押します。
4. 修正したいフィールドに強調表示を移動します。
DB–Access は、強調表示されたフィールドの位置について適切にプロンプトを出し
ます。これらのプロンプト画面のそれぞれは、対応する「ADD」画面と同様に働き
ます。
特定のプロンプトの説明箇所については、以下の表を参照してください。
84
プロンプト
説明箇所
MODIFY COLUMN NAME
78 ページの『列名』
MODIFY TYPE
79 ページの『列のデータ型』
MODIFY LENGTH
81 ページの『データの長さまたは範囲』
IBM Informix: DB-Access ユーザーズ ガイド
MODIFY INDEX
82 ページの『列インデックス』
MODIFY NULLS
83 ページの『NULL 値の許可』
5. 強調表示を次フィールドへ移動して、同じ処理を繰り返します。
6. 84 ページの図 54 に示すように表を作成するかスキーマを廃棄するかを選んだ後
で、「Exit」を選択して画面を終了させます。
変更を行わずに「Modify」画面またはメニューを終了するには、いつでも割込みキーを
押してください。
列の削除 (「Drop」オプション)
表のスキーマから列を削除するには、以下の手順を実行します。
1. 削除したい列のどこかの位置を強調表示します。
2. 「CREATE TABLE」(または「ALTER TABLE」) メニューの「Drop」オプションを
選択します。
これにより、画面上の列の行の一部または全部が強調表示されます。
図 55 に示すような「DROP」メニューが DB–Access により表示され、ユーザの決定を
検証するようプロンプトを出します。
DROP clients : Yes No
Deletes the highlighted column from the table.
--- Page 1 of 1 ---- mydata@mydbserv --------- Press CONTROL-W for Help --Column Name
customer_num
Unique No
fname
lname
company
Type
Length
Serial
Char
Char
Char
Index Nulls
101
15
15
20
Yes
Yes
Yes
図 55. 「DROP」メニュー
スキーマ エディタ内で現在強調表示されている行を削除するには、「DROP」メニュー
から「Yes」を選択します。また、行を保持するには「No」を選択します。
ストレージの配置とロック (Table_options)
図 56 に示すような「TABLE_OPTIONS」メニューを表示するには、「CREATE
TABLE」メニュー (または「ALTER TABLE」メニュー) から「Table_options」を選択し
ます。次に、ストレージ メディア上にあるデータの位置および配置などのストレージ管
理パラメータを指定することができます。
第 5 章 「Table」オプション
85
TABLE_OPTIONS clients: Storage eXtent_size Next_size Lock_mode
Define dbspace or fragmentation strategy for table storage.
Exit
---- Page 1 of 1 ---- mydata@mydbserv ---------- Press CTRL-W for Help ---Column Name
Type
Length
Index Nulls
図 56. 「TABLE_OPTIONS」メニュー
「TABLE_OPTIONS」メニューには、以下のオプションが含まれています。
オプション
目的
説明箇所
Storage
DB 領域を表示し、現行の表への
DB 領域の割当てを可能にします。
現行の表のフラグメンテーション
ストラテジの定義を可能にします。
86 ページの『DB 領域の選択』
87 ページの『新規表のフラグメ
ント化』
eXtent_size
表の初期エクステントサイズの指定
を可能にします。
96 ページの『エクステント サイ
ズの設定』
Next_size
追加エクステント サイズの指定を
可能にします。
96 ページの『エクステント サイ
ズの設定』
Lock_mode
ページまたは行のいずれかをロック
モードとして選択可能にします。
97 ページの『ロック モードの決
定』
Exit
前のメニューに戻ります。
なし
DB 領域、フラグメンテーション ストラテジ、エクステント サイズ、およびロック モ
ードなど、「Table_options」値の設定の援助については、「IBM Informix: 管理者ガイ
ド」および「IBM Informix: パフォーマンス ガイド」を参照してください。
DB 領域の選択
図 57 に示すような「STORAGE」メニューを表示するには、「TABLE_OPTIONS」メニ
ューから「Storage」オプションを選択します。
STORAGE new_acct:
Dbspace
Fragment
Exit
Select a dbspace in which to store the table.
----- Page 1 of 1 ----- mydata@mydbserv -------- Press CTRL-W for Help ----
図 57. 表データを格納し、フラグメンテーション ストラテジを定義するための「STORAGE」メニ
ュー
図 58 に示すような「SELECT DBSPACE」画面を表示するには、「STORAGE」メニュ
ーから「Dbspace」を選択します。現行データベース内の DB 領域のリストから、矢印
キーを使用して DB 領域を 1 つ強調表示させてから、Enter キーを押します。
86
IBM Informix: DB-Access ユーザーズ ガイド
SELECT DBSPACE >>
Select a dbspace with the Arrow Keys, or enter a name, then press Return.
----- Page 1 of 1 ---- mydata@mydbserv --------- Press CTRL-W for Help ---rootdbs
pers_dbs
empl_dbs
図 58. 表の格納を指定するための「SELECT DBSPACE」画面
「Fragment」を選択して、一連の追加メニューで、フラグメンテーション ストラテジを
セット アップします。説明は、87 ページの『新規表のフラグメント化』または91 ペー
ジの『既存の表のフラグメント化の変更』を参照してください。
新規表のフラグメント化
新規表のフラグメント化を調整するには、図 59 に示すような「FRAGMENT」メニュー
を表示します。このメニューには、以下の手順で到達します。
1. メイン メニューで、「Table」を選択する。
2. 「TABLE」メニューで、「Create」を選択する。
3. 「CREATE TABLE」で、「Table_options」を選択する。
4. 「TABLE_OPTIONS」メニューで、「Storage」を選択する。
5. 「STORAGE」メニューで、「Fragment」を選択する。
FRAGMENT new_acct: Round_robin
eXpression
rOwids
Select and define a round robin fragmentation strategy.
Exit
----- Page 1 of 1 ----- mydata@mydbserv -------- Press CTRL-W for Help ----
図 59. フラグメンテーション ストラテジを定義するための「FRAGMENT」メニュー
以下の表に示すように、「FRAGMENT」メニューから希望するストラテジを選択しま
す。
第 5 章 「Table」オプション
87
オプション
目的
説明箇所
Round_robin
フラグメント化のためにラウンド 95 ページの図 72
ロビン ストラテジを選択しま
す。
eXpression
フラグメント化のために式ストラ 89 ページの『式ストラテジの設
テジを選択します。
定』
rOwids
行 ID を含む列をフラグメント表 明示的に行 ID によるアクセスを
に追加します (フラグメント表に 可能にするには、o キーを押しま
行が追加された場合、データベー す。
ス サーバは、自動的には行 ID
を割り当てません)。
Exit
「FRAGMENT」メニューを終了
し、「STORAGE」メニューに戻
ります。
86 ページの図 57
DB–Access には、ハッシュ フラグメント化またはハイブリッド フラグメント化のため
の「FRAGMENT」メニュー オプションはありません。このタイプのストラテジが必要
である場合は、「SQL」メニューを使用して、CREATE TABLE 文または ALTER
TABLE 文を入力して、実行してください。
Extended Parallel Server
Extended Parallel Server では、フラグメント表のための行 ID はサポートされません。
Extended Parallel Server の終り
ラウンド ロビンの設定:
図 60 に示すような「ROUND_ROBIN」メニューを表示す
るには、「FRAGMENT」メニューの「Round_robin」オプションを選択します。
ROUND_ROBIN new_acct: Add
Modify
Drop
Screen
Exit
Add a dbspace to the fragmentation strategy above the line with the highlight.
----- Page 1 of 1 ----- mydata@mydbserv ----------- Press CTRL-W for Help ---Dbspace Name
dbspace1
dbspace2
図 60. フラグメント格納領域を選択するための「ROUND_ROBIN」メニュー
88
IBM Informix: DB-Access ユーザーズ ガイド
「ROUND_ROBIN」メニューには、以下のオプションがあります。
オプション
目的
Add
DB 領域を表示して、現行の表に割り当てたラウンド ロビン フラグ
メント領域に新規 DB 領域を追加できるようにします。
Modify
強調表示された DB 領域に対して、フラグメンテーション ストラテ
ジの再定義を可能にします。
Drop
強調表示された DB 領域を既存のストラテジから削除しますが、DB
領域はデータベース サーバから削除されません。
Screen
画面をスクロールさせて、使用可能な DB 領域をさらに表示します。
Exit
「FRAGMENT」メニューに戻ります。
87 ページの図 58 に示すように、「SELECT DBSPACE」画面のリストから、矢印キー
を使用して DB 領域を強調表示させ、Enter キーを押します。すでに別のストラテジの
一部になっている DB 領域を追加しようとすると、エラー メッセージが表示されま
す。
「ROUND_ROBIN」メニューに戻ると、そのストラテジに対して現在選択されている、
すべての DB 領域が画面に表示されます。
式ストラテジの設定: 図 61 に示すような「EXPRESSION」メニューを表示するに
は、「FRAGMENT」メニューの「eXpression」オプションを選択します。
EXPRESSION new_acct:
Add
Add a strategy definition.
Modify
Drop
Screen
Exit
----- Page 1 of 1 ----- mydata@mydbserv -------- Press CTRL-W for Help ---Dbspace Name
dbspace1
dbspace2
dbspace3
Expression
field1 <100
field1 >=100 and field1 <200
remainder
図 61. 式フラグメンテーション ストラテジを定義するための「EXPRESSION」メニュー
「EXPRESSION」メニューには、以下のオプションがあります。
オプション
目的
Add
式フラグメンテーション ストラテジに従って、この表のフラグメント
が含まれる DB 領域に対して、新しい DB 領域を追加します。
Modify
DB 領域またはその DB 領域に関連付けられた式を修正します。
Drop
強調表示された DB 領域または式を既存のストラテジから削除します
が、DB 領域はデータベース サーバから削除されません。
Screen
画面をスクロールさせて、使用可能な DB 領域をさらに表示します。
第 5 章 「Table」オプション
89
Exit
「FRAGMENT」メニューに戻ります。
重要: DB–Access では、ストラテジの式のデータ妥当性検査は実行されません。
「EXPRESSION」メニューの「Add」オプションにより、87 ページの図 58 に示したよ
うな「SELECT DBSPACE」画面が表示されます。リストから矢印キーを使用して DB
領域を強調表示させ、Enter キーを押します。すでに別のストラテジの一部になってい
る DB 領域を追加しようとすると、エラー メッセージが表示されます。
DB 領域を選択した後、図 62 に示すような「EDIT EXPRESSION」メニューが表示され
ます。このメニューから、強調表示された DB 領域に特定のレコードが属するようにす
るかどうかを決定する式を入力することができます。
EDIT EXPRESSION new_acct: New
Modify
Use-editor
Exit
Enter a new expression which will determine where a record will be stored.
----- Page 1 of 1 ----- mydata@mydbserv --------- Press CTRL-W for Help ---Dbspace Name
dbspace1
dbspace2
dbspace3
Expression
field1<100
field1>=100 and field1<200
remainder
図 62. 式の定義と編集を行うための「EDIT EXPRESSION」メニュー
「EDIT EXPRESSION」メニューには、以下のオプションがあります。
オプション
目的
New
空白の SQL エディタ画面を表示し、新しい式を入力できるようにし
ます。
Modify
SQL エディタ画面に現行の式を表示し、その式を修正できるようにし
ます。
Use-editor
システム エディタに現行の式を表示し、その式を修正できるようにし
ます。
Exit
「EXPRESSION」メニューに戻ります。
エディタを終了した後、DB–Access は、図 63 に示すような「CONFIRM CHANGES」
メニューを表示します。
90
IBM Informix: DB-Access ユーザーズ ガイド
CONFIRM CHANGES dbspace1:
Save changes.
SAVE DISCARD
----------------mydata@mydbserv----------------- Press CTRL-W for Help -----field1<100
図 63. 「CONFIRM CHANGES」メニュー
式に対する編集結果を保存するには、Enter キーを押します。式に対する編集結果を廃
棄するには、「DISCARD」を選択します。これにより、「EXPRESSION」メニューに戻
ります。
既存の表のフラグメント化の変更
表を変更している場合には、「ALTER FRAGMENT」メニューを使用して、フラグメン
ト化の調整または除去を行います。「ALTER FRAGMENT」メニューに到達するには、
以下のようにします。
v メイン メニューで、「Table」を選択する。
v 「TABLE」メニューで、「Alter」を選択する。
v 「ALTER TABLE」メニューから「Table_options」オプションを選択する。
v 「TABLE_OPTIONS」メニューから「Storage」オプションを選択する。
v 「STORAGE」メニューから「Fragment」オプションを選択する。
図 64 に、ラウンド ロビン フラグメンテーション ストラテジを持つ表が「ALTER
FRAGMENT」メニューにどのように表示されるかを示しています。 図 65 には、式ベ
ースのフラグメンテーション ストラテジを持つ表が「ALTER FRAGMENT」メニュー
でどのように表示されるかを示しています。
ALTER FRAGMENT - new_acct: Add Drop Screen
Add one new dbspace to the end of the list.
Init
aTtach
detaCh
Exit
----- Page 1 of 1 ---- newstores@mydbserv ------- Press CTRL-W for Help --Dbspace Name
dbspace1
dbspace2
dbspace3
図 64. ラウンド ロビン フラグメンテーション ストラテジのための「ALTER FRAGMENT」メニュ
ー
第 5 章 「Table」オプション
91
ALTER FRAGMENT - new_acct: Add Modify Drop Screen Init aTtach detaCh Exit
Add an expression to the fragmentation strategy above the line with the highlight.
----- Page 1 of 1 ----- newstores@mydbserv --------- Press CTRL-W for Help ---Dbspace Name Expression
dbspace1 field1 <100
dbspace2 field1 >=100 and field1 <200
dbspace3 remainder
図 65. 式フラグメンテーション ストラテジのための「ALTER FRAGMENT」メニュー
「ALTER FRAGMENT」メニューには、以下のオプションがあります。
オプション
目的
Add
ラウンド ロビン スキーマに DB
領域を追加します。
Drop
説明箇所
現行の表のフラグメント化のタイプ
に応じて、88 ページの『ラウンド
ロビンの設定』または89
ページの
現行の表のフラグメント用として使
『式ストラテジの設定』
用されている DB 領域から、1 つ
の DB 領域を削除します。
Screen
画面上で DB 領域をさらにスクロ
ールします。
なし
Init
既存の表のフラグメント化スキーマ 95 ページの『既存の表のフラグメ
(存在する場合) を記述し、ストラテ ント化』
ジの変更、フラグメントのアタッ
チ、フラグメントの切離し、または
フラグメント化の除去をユーザが行
えるようにします。
aTtach
現行の表に 1 つ以上の表をアタッ 93 ページの『DB 領域のアタッ
チし、選択されたアタッチメントを チ』
削除します。
detaCh
94 ページの『DB 領域の切離し』
特定の DB 領域にある現行の表か
らレコードを切り離し、これらのレ
コードを持つ新規表を作成します。
Exit
「TABLE_OPTIONS」メニューに戻 なし
ります。
重要: 「ALTER FRAGMENT」メニューでは 1 つのメニュー オプションしか実行でき
ず、しかもそのオプションは、現行のストラテジに 1 回だけ適用できます。例え
ば、ラウンド ロビン ストラテジには 1 つの DB 領域のみを追加することがで
き、同じ「ALTER TABLE」セッション中に DB 領域を削除することはできませ
ん。
92
IBM Informix: DB-Access ユーザーズ ガイド
DB 領域のアタッチ
「ALTER FRAGMENT」式ストラテジ メニューで「aTtach」オプションを選択すると、
「ATTACH TABLES」メニューが表示されます。 図 66 に、式フラグメント化を持つ
表に対する「ATTACH TABLES」メニューを示します。この画面のラウンド ロビン バ
ージョンでは、それぞれのフラグメントごとの表名のみが表示されます。
ATTACH TABLES new_acct: Add
Modify
Drop
Add one new table to the fragmentation strategy.
Screen
Exit
---- Page 1 of 1 ---- newstores@mydbserv -------- Press CTRL-W for Help ---Table Name
Expression
Position
Dbspace
acct
field1 <100
BEFORE
dbspace1
cur_acct
field1 >=100
図 66. 式フラグメンテーション ストラテジのための「ATTACH TABLES」メニュー
フラグメントのアタッチを開始するには、「ATTACH TABLES」メニューの「Add」オ
プションを選択します。 図 67 に示すように、SELECT ATTACHING TABLE 画面で、
希望する表名を強調表示するか入力して、Enter キーを押します。
SELECT ATTACHING TABLE >>
Select a table with the Arrow Keys, or enter the name, then press Return.
---- Page 1 of 1 ---- newstores@mydbserv -------- Press CTRL-W for Help ---acct
cur_acct
myacct
図 67. SELECT ATTACHING TABLE 画面
表でラウンド ロビン ストラテジが使用されている場合、結果の 1 つまたは複数のフラ
グメントは、フラグメンテーション ストラテジの終わりの位置に置かれ、「ALTER
FRAGMENT」メニューに戻ります。
表で式ストラテジが使用されている場合は、以下の手順を完了させてください。
1. 表を選択した後、「EDIT EXPRESSION」メニューが表示されます。 90 ページの図
62を参照してください。
2. 「EDIT EXPRESSION」メニューを終了させると、図 68 に示すような「ADD
DEFINE ATTACH POSITION」メニューが表示されます。
第 5 章 「Table」オプション
93
ADD DEFINE ATTACH POSITION acct: Before After None
Define a position for an attaching fragment before a dbspace.
----- Page 1 of 1 ---- newstores@mydbserv -------- Press CTRL-W for Help ----
図 68. 「ADD DEFINE ATTACH POSITION」メニュー
v 次の手順で選択する DB 領域の前に 新規フラグメントをアタッチするには、
「Before」を選択します。
v 次の手順で選択する DB 領域の後に 新規フラグメントをアタッチするには、
「After」を選択します。
v デフォルトの位置に新規フラグメントをアタッチするには、「None」を選択しま
す。
3. アタッチの位置として「Before」または「After」を選択すると、図 69 に示すような
「SELECT DBSPACE」画面が表示され、新規フラグメントをアタッチする前の、ス
トラテジを含んでいる DB 領域がリストされます。
SELECT DBSPACE >>
Select a dbspace with the Arrow Keys, or enter a name, then press Return.
----- Page 1 of 1 ---- newstores@mydbserv -------- Press CTRL-W for Help --dbspace1
dbspace2
dbspace3
図 69. フラグメント化された DB 領域をリストしている「SELECT DBSPACE」画面
追加のフラグメントを前または後に追加したい DB 領域を選択します。
93 ページの図 66 に示すような「ATTACH TABLES」メニューが再表示され、
「Position」フィールドと「Dbspace」フィールドに値が示されます。
DB 領域の切離し
「ALTER FRAGMENT」メニューからの「detaCh」オプションにより、図 70 に示すよ
うな「DETACH DBSPACE」画面が表示されます。
94
IBM Informix: DB-Access ユーザーズ ガイド
DETACH DBSPACE >>
Select a dbspace with the Arrow Keys, or enter a name, then press Return.
----- Page 1 of 1 ---- newstores@mydbserv ------- Press CTRL-W for Help ---dbspace1
dbspace2
dbspace3
図 70. フラグメント化を除去するための「DETACH DBSPACE」画面
レコードを新規のフラグメント化されていない表にコピーする DB 領域を選択します。
リストから DB 領域を選択するか、またはDB 領域名を入力します。無効な DB 領域
名を入力すると、エラー メッセージが表示されます。
「DETACH DBSPACE」画面に正しく DB 領域名を入力した後、図 71 に示すような
「NEW TABLE」画面が表示されます。
NEW TABLE >> Enter the name you want assigned to the new table, then press Return.
---- Page 1 of 1 ---- newstores@mydbserv -------- Press CTRL-W for Help ----
図 71. 切り離された DB 領域の名前を指定するための「NEW TABLE」画面
新規のフラグメント化されていない表に割り当てたい名前を入力します。この表には、
「DETACH DBSPACE」画面を使用して以前に選択した DB 領域からのレコードが格納
されます。表示は、「ALTER FRAGMENT」メニューに戻ります。
既存の表のフラグメント化
「STORAGE」メニューの「Fragment」オプションを選択するときに、表にフラグメンテ
ーション ストラテジがないと、図 72 に示すような「ALTER FRAGMENT」メニューが
表示されます。
ALTER FRAGMENT - new_acct:
Init
Define a fragmentation strategy.
Attach
Exit
----- Page 1 of 1 ---- newstores@mydbserv ------- Press CTRL-W for Help ----
図 72. フラグメンテーション ストラテジがない場合の「ALTER FRAGMENT」メニュー
第 5 章 「Table」オプション
95
「ALTER FRAGMENT」メニューには、以下のオプションがあります。
オプション
目的
説明箇所
Init
以下のオプションを提供します。
「ALTER FRAGMENT」の
「INIT」メニューには、
「CREATE TABLE」の
「FRAGMENT」メニューと同じ
オプションがあります。説明
は、87 ページの『新規表のフラ
グメント化』を参照してくださ
い。
v 前にフラグメント化されていなかっ
た表をフラグメント化する
v 表からフラグメント化を除去する
v 表のフラグメンテーション ストラテ
ジを変更する
「ALTER FRAGMENT」の
「ATTACH」メニューは、ラウ
ンド ロビンと式のフラグメント
化を提供します。両方のタイプ
のストラテジについての説明
は、87 ページの『新規表のフラ
グメント化』を参照してくださ
い。
Attach
フラグメンテーション ストラテジを定
義し、新しいストラテジを使用してフ
ラグメント化するための表の選択を可
能にします。このオプションは、以下
の文と同じ効果になります。ALTER
FRAGMENT ON TABLE table1... ATTACH
table1, table2
Exit
「TABLE_OPTIONS」メニューに戻りま なし
す。
重要: 1 つの「フラグメント変更」セッション中には、1 つの操作しか実行できませ
ん。
エクステント サイズの設定
表を作成するときに、表のために予約する初期ディスク領域の量 (つまり、初期エクス
テントサイズ) を指定することができます。初期エクステントがいっぱいになるとデー
タベース サーバによって追加される、追加エクステント (つまり、次エクステント 領
域) のサイズも指定することができます。
初期エクステント サイズを指定するには、「TABLE_OPTIONS」メニューの
「eXtent_size」オプションを選択します。 DB–Access は、図 73 に示すような、
「Extent Size」画面を表示します。初期エクステント サイズを設定した後、
「TABLE_OPTIONS」メニューから「Next_size」オプションを選択して、図 74 に示す
ような「Next Size」画面を表示します。
96
IBM Informix: DB-Access ユーザーズ ガイド
Extent Size >>
Specify initial extent size in kilobytes.
----- Page 1 of 1 ----- mydata@mydbserv ----------- Press CTRL-W for Help ---Column Name
Type
Length
Index Nulls
図 73. 「(Initial) Extent Size」画面
Next Size >>
Specify next extent size in kilobytes.
----- Page 1 of 1 ----- mydata@mydbserv ---------- Press CTRL-W for Help ---Column Name
Type
Length
Index Nulls
図 74. 「Next (Extent) Size」画面
いずれかの画面でエクステント サイズを選択するには、以下の操作の 1 つを実行しま
す。
v Enter キーを押して、デフォルトのサイズである 8 KB を受け入れる。
v 数値 (K バイトの単位で表す) を入力して、Enter キーを押す。
最小のエクステント サイズは 4 KB です。
ロック モードの決定
「TABLE_OPTIONS」メニューの「Lock_mode」オプションを選択すると、DB–Access
は、図 75 に示すような「LOCK_MODE」メニューを表示します。
LOCK_MODE clients:
Page Row Exit
Locking is at page level. This is the default.
----- Page 1 of 1 ----- mydata@mydbserv ---------- Press CTRL-W for Help ---Column Name
Type
Length
Index Nulls
図 75. 「LOCK_MODE」メニュー
「LOCK_MODE」メニューにより、データベースが表内の行をロックするときに使用す
るモードを選択することができます。「LOCK_MODE」メニューには、以下のオプショ
ンがあります。
オプション
目的
Page
行があるページ全体をロックします。
Row
選択された行を個別にロックします。
Exit
「TABLE_OPTIONS」メニューに戻ります。
第 5 章 「Table」オプション
97
ロック可能な最小のオブジェクトは、表の 1 つの行となります。ディスク ページに
は、表の行が 1 つ以上含まれています。ページ上の個別の行ではなく、ディスク ペー
ジをロックすることによって、パフォーマンスを向上させるかどうかを判断するには、
「IBM Informix: パフォーマンス ガイド」を参照してください。終了する前に行レベル
ロックを指定しないと、DB–Access はデフォルト (ページ レベル) を使用します。
行 ID の追加または削除
既存の表を変更する場合にのみ、行 ID を追加または削除することができます。
「ALTER ROWID」メニューに到達するには、以下のようにします。
v 「ALTER TABLE」メニューから「Table_options」を選択する。
v 「TABLE OPTIONS」メニューから「Rowids」選択する。
「ALTER ROWID」メニューには、以下のオプションがあります。
オプション
目的
Add
フラグメント表に行 ID を指定して列を追加します。
Drop
前に追加した行 ID の列を廃棄します。
None
この画面上で行った選択をキャンセルして、表を変更せずに終了でき
るようにします。
Exit
「TABLE_OPTIONS」メニューに戻ります。
「Add」または「Drop」を選択すると、別のメニューが表示されて、選択内容を検証す
るようプロンプトが出されます。「Add」または「Drop」を実行するには「Yes」を選択
し、「Add」または「Drop」をキャンセルするには「No」を選択します。
制約の定義
DB–Access スキーマ エディタを使用して、指定した表の中の列に対する制約を定義す
ることができます。主キー制約、外部キー制約、列レベルと表レベルのチェック制約、
および一意性制約の定義、ならびに、列デフォルト値の追加と変更を行うことができま
す。
「CREATE TABLE」メニューから「Constraints」オプションを選択すると、図 76 に示
すような「CONSTRAINTS」メニューが表示されます。
CONSTRAINTS - mytab:
Primary Foreign Check Unique Defaults Exit
Define a primary key constraint.
-----------------mydata@mydbserv------a-------- Press CTRL-W for Help --------
図 76. 「CONSTRAINTS」メニュー
「CONSTRAINTS」メニューには、以下のオプションがあります。
オプション
98
目的
IBM Informix: DB-Access ユーザーズ ガイド
Primary
表を構成している列をリストして、主キーを構成する 1 つまたは複数
の列を選択できるようにします。
Foreign
列に対する外部キーの関係を行使します。
Check
列に対する有効値を指定可能にし、その列へのデータ入力の検証を強
制実行します。
Unique
列に固有値が含まれていなければならないことを宣言します。
Defaults
列に対するデフォルト値の設定を可能にします。
Exit
「CREATE TABLE」メニューに戻ります。
主キー制約の定義
現行の表に対する主キー制約を追加、修正、または削除するには、「CONSTRAINTS」
メニューの「Primary」オプションを選択します。 99 ページの図 77 に示すような、
「PRIMARY KEY」メニューが表示されます。
PRIMARY KEY mytab: Add Modify Drop Screen Exit
Add a constraint name or column name.
-------Page 1 of 1 --------mydata@mydbserv------- Press CTRL-W for Help -------Constraint Name
constraint1
Column Name
column1
図 77. 「PRIMARY KEY」メニュー
主キー制約を入力すると、DB–Access は、以下の情報を検証することで、その入力の妥
当性を検査します。
v 列名が繰り返されていないこと。
v 1 つの制約に、16 を超える列名が指定されていないこと。
v 列にバイト (BYTE) 型またはテキスト (TEXT) 型のデータ型が割り当てられていな
いこと。
以下のようにして、メニュー オプションを使用します。
v 「Screen」オプションを使用して、追加の制約の記述までスクロールして、修正また
は削除する制約を選択することができます。
v 主キー参照制約を追加するために「Add」オプションを選択すると、スキーマ エディ
タは、新しい行を制約リストの先頭に挿入して、強調表示します。カーソルを既存の
制約の行に移動して「Modify」オプションを選択すると、その行の内容を変更するこ
とができます。
1. 「ADD (または MODIFY) CONSTRAINT NAME」のプロンプトに、制約名を入
力します。
第 5 章 「Table」オプション
99
制約名を入力せずに、この行で Enter キーを押すと、データベース サーバは、
unassigned1、unassigned2 などの一時的な制約名を割り当てます。この一時的
な制約名は、それを修正するか、または表が作成または廃棄されるまで存在しま
す。データベース サーバは、表が作成されたときに永久制約名を割り当てます。
2. 「ADD (または MODIFY) COLUMN NAME 」のプロンプトに列名を入力しま
す。
v 「Drop」を選択して、強調表示で示される制約を除去します。強調表示されたフィー
ルドが「制約名」である場合、その制約に関連付けられたすべての列が削除されま
す。表示では、行が削除され、削除された後のすき間はなくなります。
外部キー制約の定義
現行の表に対する外部キー制約を作成、修正、または削除するには、
「CONSTRAINTS」メニューの「Foreign」オプションを選択します。 図 78 に示すよう
な、「FOREIGN KEY」メニューが表示されます。
FOREIGN KEY mytab: Add Modify Drop Screen Exit
Add a constraint name or referencing/referenced column pair.
------Page 1 of 1 -------mydata@mydbserv------ Press CTRL-W for Help -------Constraint
Referencing Column
Referenced Table
unassigned0
column1
table2
column2
column2
column3
column3
Referenced Column
column1
CD
Y
図 78. 「FOREIGN KEY」メニュー
以下のようにして、メニュー オプションを使用します。
v 「Screen」オプションを使用して、画面上の追加の制約の記述までスクロールして、
修正または削除する制約を選択することができます。
v 「Add」オプションを選択して、制約名、参照表、およびカスケード削除を指定する
か、またはその制約に対する 1 つまたは複数の参照列と被参照列のペアを追加しま
す。
1. 「ADD CONSTRAINT NAME」のプロンプトに、制約名を入力します。制約名を
入力せずに、この行で Enter キーを押すと、DB–Access は、一時的な制約名を割
り当てます。データベース サーバは、制約が作成されるときに、その制約に永久
名を割り当てます。
2. 「ADD COLUMN NAME」のプロンプトに、参照列 の名前を入力します。
3. 「ADD REFERENCED TABLE」のプロンプトに、被参照表 の名前を入力しま
す。
4. 2 番目の「ADD COLUMN NAME」のプロンプトに、被参照列 の名前を入力しま
す。
100
IBM Informix: DB-Access ユーザーズ ガイド
5. 「CD (カスケード削除)」フィールドが現行のフィールドである場合は、101 ペー
ジの図 79 に示すような、「ADD ENABLE CASCADING DELETES」メニューが
表示されます。
ADD ENABLE CASCADING DELETES mytab3:
No, I do not want cascading deletes.
No Yes
-------- Page 1 of 1 --------mydata@mydbserv------ Press CTRL-W for Help ----Constraint
cons1
Referencing Column
col1
Referenced Table
Referenced Column
yourtab
col6
CD
N
図 79. 「ADD ENABLE CASCADING DELETES」メニュー
カスケード削除を可能にするには、「Yes」を選択します。被参照レコード (親レ
コード) を削除すると、すべての対応する参照レコード (子レコード) も削除する
ことになります。 (「Yes」オプションは、CREATE TABLE 文の REFERENCES
節の ON DELETE CASCADE オプションと同等です。)
カスケード削除を止めるには、「No」を選択します。参照レコード (子レコード)
が存在すると、被参照列 (親列) を削除することはできません。
参照整合性とカスケード削除についての詳細説明は、「IBM Informix: SQL ガイド
: 構文」の CREATE TABLE 文の説明を参照してください。
カスケード削除の入力を完了すると、カーソルは「Constraint」フィールドに戻りま
す。別の制約を入力するか、または割込みキーを押すと、「FOREIGN KEY」メニュ
ーの先頭行に戻ります。
v 行の内容を変更するには、カーソルを既存の制約の行に移動して「Modify」オプショ
ンを選択します。「Constraint」、「Referencing Column」、および「Referenced
Table」の情報を修正することができます。
フィールドの項目を変更し、Enter キーを押してその項目を修正するか、または外部
キー制約を修正したくない場合は、割込みキーを押します。
v 「Drop」オプションは、外部キー制約のリストを表示し、削除する制約を選択するよ
うプロンプトを出します。
現行の (強調表示された) フィールドが「Constraint」である場合、制約全体 が削除さ
れます。他のフィールドが強調表示されている場合は、その被参照側と参照側のペア
のみが削除されます。
デフォルトは「Yes」です。強調表示された制約を削除するには、Enter キーを押し
ます。その制約を削除したくない場合は、カーソルを移動して「No」を強調表示させ
ます。これにより、「FOREIGN KEY」メニューに戻ります。
第 5 章 「Table」オプション
101
チェック制約の定義
「CHECK CONSTRAINTS」メニューにより、現行の表のチェック制約を追加、修正、
または削除することができます。「CONSTRAINTS」メニューの「Check」オプションを
選択して、図 80 に示すような「CHECK CONSTRAINTS」メニューにアクセスします。
CHECK CONSTRAINTS mytab:
Add a check constraint.
Add Modify Drop Screen Exit
-----------------mydata@mydbserv------------- Press CTRL-W for Help --------Constraint Name
Value
cons2
(column1 > (c ...
cons3
column2 < col ...
cons4
column3 > 100
図 80. 「CHECK CONSTRAINTS」メニュー
「CHECK CONSTRAINTS」メニューは、前に追加したチェック制約を表示します。チ
ェック値の最初の 36 文字が、「CHECK CONSTRAINTS」メニューに表示されます。
以下のようにして、「CHECK CONSTRAINTS」メニュー オプションを使用します。
v 「Drop」オプションにより、現行のチェック制約を削除できます。
デフォルトは「Yes」です。強調表示された制約を削除するには、Enter キーを押し
ます。その制約を削除したくない場合は、カーソルを移動して「No」を強調表示させ
てから、Enter キーを押します。これにより、「CHECK CONSTRAINTS」メニュー
に戻ります。
v 「Add」オプションを選択して、表にチェック制約を追加し、その制約の名前と値を
入力します。
1. 「ADD (または MODIFY) CONSTRAINT NAME」のプロンプトに名前を入力し
ます。値を指定せずに、このフィールドで Enter キーを押すと、一時的な制約名
が割り当てられ、その名前は表が作成されるかまたは廃棄されるまで存在しま
す。
2. 102 ページの図 81 に示すような 「ADD (またはMODIFY) CHECK VALUE」メ
ニューから、SQL エディタを選択するか、または別のエディタを指定して、チェ
ック制約の値を入力します。
ADD CHECK VALUE cons99: New Modify Use-editor Exit
Enter a new check value using the SQL editor.
----------------mydata@mydbserv------------- Press CTRL-W for Help --------
図 81. 「ADD CHECK VALUE」メニュー
「ADD CHECK VALUE」メニューには、以下のオプションがあります。
102
IBM Informix: DB-Access ユーザーズ ガイド
オプション
目的
New
空白の SQL エディタ画面を表示し、新しいチェック値を入力できる
ようにします。
Modify
SQL エディタ画面に現行のチェック値を表示し、その値を修正できる
ようにします。
Use-editor
システム エディタに現行のチェック値を表示し、その値を修正できる
ようにします。
Exit
「CHECK CONSTRAINTS」メニューに戻ります。
「ADD CHECK VALUE」メニューを中断するか、またはチェック値を定義せずに終了
すると、「CHECK CONSTRAINTS」メニューに戻ります。チェック値を定義すると、
追加モードのまま新しい行が挿入され、「Constraint Name」が現行フィールドになり、
「ADD CONSTRAINT NAME」プロンプトが表示されます。
一意性制約の定義
「UNIQUE CONSTRAINTS」メニューにより、現行の表の一意性制約を追加、修正、ま
たは削除することができます。 図 82 に示すような「UNIQUE CONSTRAINTS」メニュ
ーにアクセスするには、「CONSTRAINTS」メニューの「Unique」オプションを選択し
ます。
UNIQUE CONSTRAINTS mytab:
Add a unique constraint.
Add Modify Drop Screen Exit
------------------mydata@mydbserv------------ Press CTRL-W for Help --------Constraint Name
Column Name
cons2
column1
column2
column3
column4
cons3
図 82. 「UNIQUE CONSTRAINTS」メニュー
以下のようにして、「UNIQUE CONSTRAINTS」メニュー オプションを使用します。
v 「Screen」を選択して、一意性制約の次画面を表示します。
v 「Add」オプションを選択すると、スキーマ エディタは、新しい行を 1 行追加しま
す。
1. 「ADD CONSTRAINT NAME」のプロンプトに、制約名を入力します。名前を入
力せずに、このフィールドで Enter キーを押すと、一時的な制約名が割り当てら
れ、その名前は表が作成されるかまたは廃棄されるまで存在します。
2. 「ADD COLUMN NAME」のプロンプトに、固有値を持つ必要のある列の名前を
入力します。新しい行が追加され、「Column Name」がまだ現行のフィールドに
なっています。
第 5 章 「Table」オプション
103
v 「Modify」オプションにより、「Constraint Name」フィールドまたは「Column
Name」フィールドのいずれかを修正することができます。「Constraint Name」フィー
ルドを修正する場合、「MODIFY CONSTRAINT NAME」プロンプトが表示されま
す。「Column Name」フィールドを修正する場合には、「MODIFY COLUMN
NAME」プロンプトが表示されます。
v 「Drop」オプションを選択して、強調表示されている制約または列名を削除します。
制約名を削除したい場合、その制約名に関連付けられたすべての列名も削除されま
す。
重要: 一意性制約は、作成後に修正することはできません。「UNIQUE
CONSTRAINTS」メニューにリストされた一意性制約を識別するために、制約名
の前にアスタリスク (*) を使用します。「UNIQUE CONSTRAINTS」メニューで
「Modify」オプションを使用して一意性制約を修正しようとすると、エラー メッ
セージが表示されます。
データ妥当性検査: 一意性制約を入力すると、DB–Access は、以下の情報を検証す
ることで、その入力の妥当性を検査します。
v 列名が存在すること。
v 列名が繰り返されていないこと。
v 1 つの制約に、16 を超える列名が含まれていないこと。
v 列にバイト (BYTE) 型またはテキスト (TEXT) 型のデータ型が割り当てられていな
いこと。
デフォルト値の定義
図 83 に示すような「DEFAULTS」メニューを使用して、表の中の列のデフォルト値を
定義します。「DEFAULTS」メニューにアクセスするには、「CONSTRAINTS」メニュ
ーの「Defaults」オプションを選択します。
DEFAULTS mytab: Add Modify Drop Screen Exit
Add a column default.
-------Page 1 of 1 --------mydata@mydbserv----- Press CTRL-W for Help ------Column Name
Type
Value
column1
User
column3
Null
column5
Today
column6
Current (Fraction to Fraction (5))
column7
Literal
column8
Literal
1200
図 83. 「DEFAULTS」メニュー
104
IBM Informix: DB-Access ユーザーズ ガイド
「DEFAULTS」メニューには、以下のオプションがあります。
オプション
目的
Add
該当するデータ型の列デフォルト値を追加します。
Modify
既存のデフォルト名、データ型、および値をリストして、デフォルト
の属性を変更できるようにします。
Drop
列デフォルトを削除します。
Screen
次画面のデフォルトを表示します。
Exit
「CONSTRAINTS」メニューに戻ります。
値の最初の 28 文字が表示されます。
列デフォルトを追加する場合:
1. 「Add」オプションを選択します。
スキーマ エディタは、リストの先頭に新しい行を挿入し、「Column Name」フィー
ルドを現行のフィールドにします。
2. 「ADD COLUMN NAME」プロンプトに、列名の値を入力します。
3. 図 84 に示す「ADD DEFAULT TYPE」メニューから、現行の表の列のデフォルト値
を定義します。
ADD DEFAULT TYPE mytab: Literal User Current Null Today Db-server-name Site-name
Assign a literal value using either the SQL editor or a system editor.
---------------mydata@mydbserv---------------- Press CTRL-W for Help ---------
図 84. 「ADD DEFAULT TYPE」メニュー
「ADD DEFAULT TYPE」メニューには、列にデフォルト値を割り当てることができ
る、以下のオプションがあります。
オプション
割り当てるデフォルト値
Literal
SQL エディタまたはユーザ指定のシステム エディ
タのいずれかで入力されたリテラル デフォルト値
User
現行のユーザのログイン名
Current
現在のシステム クロックの時刻
Null
NULL
Today
現在のシステム日付
Db-server-name
現行のデータベース サーバ名
Site-name
現行のサイト名
第 5 章 「Table」オプション
105
v 「User」、「Null」、「Today」、「Db-server-name」または「Site-name」を選択した
場合、システムは、その値をデフォルト型に割り当て、追加モードで「DEFAULTS」
メニューに戻ります。
v デフォルト値として「Current」を選択した場合、修飾子は列定義から取られます。
v デフォルト値を入力する場合に、型が日時 (DATETIME) 型または時間隔
(INTERVAL) 型である場合、その値だけを入力します。修飾子は、列定義から取られ
ます。
v デフォルト型として「Literal」を選択した場合、「ADD DEFAULT VALUE」メニュ
ーが表示され、デフォルト値としてリテラルを割り当てることができます。
図 85 に示す「ADD DEFAULT VALUE」メニューにより、SQL エディタまたはシステ
ム エディタのいずれかを使用して、現行の表の列のデフォルト値を追加または修正する
ことができます。
ADD DEFAULT VALUE column7: New Modify Use-editor Exit
Enter a new default value using the SQL editor.
-----------------mydata@mydbserv------------- Press CTRL-W for Help ----------
図 85. 「ADD DEFAULT VALUE」メニュー
「ADD DEFAULT VALUE」メニューには、以下のオプションが表示されます。
オプション
目的
New
空白の SQL エディタ画面を表示し、新しい値を入力できるようにし
ます。
Modify
SQL エディタ画面に現行のデフォルトを表示し、そのデフォルト値を
修正できるようにします。
Use-editor
システム エディタに現行のデフォルトを表示し、現行の値を修正でき
るようにします。
Exit
ADD DEFAULT VALUE メニューに戻ります。
列名、型、または値のフィールドを修正する場合:
1. 「Modify」オプションを選択して、強調表示されている「Column Name」、
「Type」、または「Value」のフィールドを修正します。
2. 値を強調表示させると、SQL エディタまたはシステム エディタを起動するよう
「MODIFY DEFAULT VALUE」メニューでプロンプトが出され、既存のデフォルト
値を上書きするか、または修正することができます。
データ妥当性検査: デフォルト値を入力すると、DB–Access はその入力値の妥当性
を検査します。データベース サーバは、定数値の妥当性を検査し、以下の情報をチェッ
クします。
106
IBM Informix: DB-Access ユーザーズ ガイド
v 列名が存在しなければなりません。
v 列型は、シリアル (SERIAL) 型にすることはできません。
v 列で NULL が許可されていない場合、デフォルト型として「NULL」 を指定できま
せん。
v デフォルト型の「Current」は、日時 (DATETIME) 型の列型でのみ使用できます。
v デフォルト型の「Db-server-name」は、最小長が 18 文字の文字 (CHAR) 型、各国語
文字 (NCHAR) 型、可変長文字 (VARCHAR) 型、または各国語可変長文字
(NVARCHAR) 型の列型でのみ使用することができます。
v デフォルト型の「Site-name」は、最小長が 18 文字の文字 (CHAR) 型、各国語文字
(NCHAR) 型、可変長文字 (VARCHAR) 型、または各国語可変長文字 (NVARCHAR)
型の列型でのみ使用することができます。
v デフォルト型の「Today」は、日付 (DATE) 型でのみ使用できます。
v デフォルト型の「User」は、最小長が 18 文字の文字 (CHAR) 型、各国語文字
(NCHAR) 型、可変長文字 (VARCHAR) 型、または各国語可変長文字 (NVARCHAR)
型の列型でのみ使用することができます。
表情報の表示
「TABLE」メニューの「Info」オプションを使用して、表の列、インデックス、アクセ
ス権、参照アクセス権、制約 (参照、チェック、または一意性)、列デフォルト値、トリ
ガ、状態、およびフラグメンテーション ストラテジに関する情報を表示します。表の所
有者または情報をビューに表示するためのオプションはありません。
「TABLE」メニューの「Info」オプションを選択すると、図 86 に示すような、「INFO
FOR TABLE」画面が表示されます。
INFO FOR TABLE >>
Choose a table with the Arrow Keys, or enter a name, then press Return.
------------------ mydata@mydbserv ------------ Press CTRL-W for Help ------clients
customer
orders
図 86. 「INFO FOR TABLE」画面
この画面には、現行データベースに存在する表の名前がリストされます。以下の点に注
意してください。
v 表の所有者でない場合は、june.clients のように、表の名前の前に所有者名が付けら
れます。
v 表のリストが 1 画面に収まらない場合、最後の項目は省略記号 (...) になります。こ
の省略記号を矢印キーを使用して強調表示させると、次ページの表名が表示されま
第 5 章 「Table」オプション
107
す。
広域言語サポート
v 広域言語サポートが使用可能である場合、データベースが作成されたときに定義され
たデータベース照合ルールにしたがって、表名がソートされます。したがって、
DB–Access で異なる照合順序を使用している異なるユーザで、データベースにリスト
された表名が、同じ順序でリストされているかどうかを確認してください。
広域言語サポート の終り
異なるデータベース サーバに関する情報を要求するには、プロンプトで、
database@server:table または database@server:owner.table という形式を使用してくださ
い。以下の例は、データベース サーバ topend 上 の accounts データベースに dba
が作成した、customer 表に関する情報を要求しています。
INFO FOR TABLE >> accounts@topend:dba.customer
表情報を要求せずに「INFO FOR TABLE」画面を終了するには、割込みキーを押しま
す。これにより、「TABLE」メニューに戻ります。
表は、以下のいずれかの方法で選択できます。
v 表名を入力して、Enter キーを押す。
現行データベースにない表の情報が必要な場合、この方法を使用し、絶対パス名を指
定する必要があります。
v 矢印キーを使用して希望する表名を強調表示して、Enter キーを押す。
例えば、customer 表の場合、customer と入力するか、または矢印キーを使用してそ
れを強調表示して、Enter キーを押します。 図 87 と108 ページの図 88 に示すよう
に、「INFO」メニューが表示され、先頭行に customer と表示されます。
INFO - customer: Columns Indexes Privileges
Display column names and data types for a table.
References Status
...
----------------- mydata@mydbserv ------------- Press CTRL-W for Help -------
図 87. 表情報を表示する「INFO」メニュー (最初の画面)
INFO - customer: ... cOnstraints triGgers Table Fragments
Reference menu and primary, unique, check and defaults options.
Exit
------------------ mydata@mydbserv ------------- Press CTRL-W for Help ------
図 88. 表情報を表示する「INFO」メニュー (2 番目の画面)
108
IBM Informix: DB-Access ユーザーズ ガイド
「INFO」メニューには、以下のオプションがあります。
オプション
目的
説明箇所
Columns
列名ごとにデータ型をリストし、ど
の列に NULL 値を入れられるかを
示します。
110 ページの『列情報の表示』
Indexes
指定された表に定義された、それぞ
れのインデックスを記述します。
113 ページの『インデックス情報
の表示』
Privileges
114 ページの『表レベルのアクセ
指定された表に対する
Select、Update、Insert、Delete、Index、ス権の表示』
または Alter のアクセス権を持って
いるユーザをリストします。
References
指定された表に対する表レベルの
References アクセス権を持っている
ユーザ、およびそれらのユーザが参
照できる列の名前をリストします。
114 ページの『参照アクセス権の
表示』
Status
現行の表の表名、所有者、行サイ
ズ、行と列の数、および作成日をリ
ストします。
なし
cOnstraints
指定された表の列に対する参照制
約、主キー制約、一意性制約、チェ
ック制約、およびデフォルト値を表
示します。
115 ページの『列制約とデフォル
トの表示』
triGgers
指定されたトリガに関するヘッダと
本体の情報を表示します。
117 ページの『トリガの表示』
Table
「INFO FOR TABLE」メニューを再 なし
表示して、別の表を選択して調べる
ことができるようにします。
Fragments
表に割り当てられたフラグメント化 118 ページの『フラグメント化情
された DB 領域をリストし、式ベー 報の表示』
スのフラグメント化の場合には、そ
れぞれの DB 領域に割り当てられた
式を表示します。
Exit
「TABLE」メニューに戻ります。
なし
ヒント: 「CREATE TABLE」メニューから、「Table-options」を使用してエクステント
とロック モードの情報を表示するか、または SELECT文を出して systables
システム カタログ表の表の説明をリストしてください。
第 5 章 「Table」オプション
109
列情報の表示
「INFO」メニューの「Columns」オプションを使用して、指定された表のそれぞれの列
ごとに、列の名前、列のデータ型、および列内で NULL 値が許可されるかどうかの情
報を表示します。
図 89 に、cust_calls 表で「Columns」オプションを選択した場合に表示される情報の
種類を示します。
Column name
Type
Nulls
customer_num
call_dtime
user_id
call_code
call_descr
res_dtime
res_descr
INTEGER
DATETIME YEAR TO MINUTE
CHAR(32)
CHAR(1)
CHAR(240)
DATETIME YEAR TO MINUTE
CHAR(240)
no
yes
yes
yes
yes
yes
yes
図 89. cust_calls 表の列情報の表示
DB-Access のデータ型
図 89 の列は、cust_calls 表がすべて組込み (標準) データ型から構成されていること
を示しています。「CREATE TABLE」メニュー階層を介して使用可能なデータ型は、
組込み型です。
「Columns」オプションで表示できる組込み型は、ブール (BOOLEAN) 型、バイト
(BYTE) 型、文字 (CHAR) 型、可変長文字 (CHARACTER VARYING) 型、日付
(DATE) 型、日時 (DATETIME) 型、10 進数 (DECIMAL) 型、実数 (FLOAT) 型、INT8
型、整数 (INTEGER) 型、時間隔 (INTERVAL) 型、金額 (MONEY) 型、各国語文字
(NCHAR) 型、各国語可変長文字 (NVARCHAR) 型、シリアル (SERIAL) 型、SERIAL8
型、小桁実数 (SMALLFLOAT) 型、小桁整数 (SMALLINT) 型、テキスト (TEXT) 型、
可変長文字 (VARCHAR) 型、およびユーザ定義型です。
これらのデータ型の説明は、「IBM Informix: SQL ガイド: 参照」を参照してくださ
い。
図 90 は、ブール (BOOLEAN) 型、8 バイト整数 (INT8) 型、8 バイト シリアル
(SERIAL8) 型、および他の組込みデータ型の列を持った表の列情報の表示を示したもの
です。
110
IBM Informix: DB-Access ユーザーズ ガイド
Column name
id_num
yes_or_no
int8col
serial8col
text_descr
Type
Nulls
integer
boolean
int8
serial8
char(20)
yes
yes
yes
yes
yes
図 90. 幾つかの組込み型を持つ表の列情報の表示
ラージ オブジェクト:
ラージ オブジェクトは、1 つの列に大量のデータを格納する
組込みデータ型です。表内で、ラージ オブジェクト データ型の列には、実際には、デ
ータベース サーバがラージ データ オブジェクトを置く、物理 ストレージへのポイン
タが入っています。
DB–Access は、以下のラージ オブジェクト データ型のいずれでも表示できます。
v テキスト (TEXT) 型、バイト (BYTE) 型
Dynamic Server
v 文字ラージ オブジェクト (CLOB) 型、バイナリ ラージ オブジェクト (BLOB) 型
Dynamic Server の終り
「Columns」オプションでは、ラージ オブジェクトへのポインタが含まれるどの列に
も、その特定のデータ型を表示します。 図 91 に、バイト (BYTE) 型の列を持つ表の列
情報の表示を示します。
Column name
Type
Nulls
id
binary_col
integer
byte
yes
yes
図 91. バイナリ ラージ オブジェクト (BLOB) 型の列の列情報の表示
Dynamic Server の拡張データ型
この節では、Dynamic Server のユーザ定義のデータ型と複素数データ型が、DB–Access
でどのように表示されるかを説明します。
不透明 (opaque) 型: 不透明 (opaque) 型は、データベース サーバに属しているど
の組込み型でも表すことができないデータを表すものです。 DB–Access は、不透明
(opaque) 型を識別して表示することができます。
第 5 章 「Table」オプション
111
例えば、circle_col という名前の列に circle_t という不透明 (opaque) 型を割り当てて
いるとします。「Columns」オプションでは、図 92 に示すように、「Type」列に不透
明 (opaque) 型の名前が表示されます。
Column name
Type
Nulls
id
circle_col
integer
circle_t
yes
yes
図 92. 不透明 (opaque) 型を持つ列の情報の表示
コレクション (COLLECTION) 型: コレクション (COLLECTION) 型にはゼロ個以
上の要素が含まれ、以下のデータ型名の 1 つを使用して、より明確に定義されます。
データ型
特性
セット (SET) 型
要素の順序なしコレクションで、重複は許されない
マルチセット (MULTISET) 型
要素の順序なしコレクションで、重複が許される
リスト (LIST) 型
要素の順序付きコレクションで、重複が許される
DB–Access は、特定の種類のコレクション (COLLECTION) 型を「Type」列に表示しま
す。例えば、図 93 は、siblings という名前のセット (SET) 型の列の表示を示します。
Column name
Type
Nulls
id
siblings
integer
set
yes
yes
図 93. コレクション (COLLECTION) 型の列の情報の表示
行 (ROW) 型:
行 (ROW) 型を持つ列を含む表に対する「Columns」オプションで
は、「Type」列に row という文字列が表示されます。 DB–Access は、列が名前付き
行型であっても名前なし行型であっても、この文字列を表示します。行 (ROW) 型
rectangle_t を定義し、それを列 rect に割り当てているとします。 図 94 は、rect に
対する「Columns」オプションの表示で、データ型として、特定の行 (ROW) 型名
rectangle_t ではなく、row を戻しているのを示しています。
Column name
Type
Nulls
id
rect
integer
row
yes
yes
図 94. 行 (ROW) 型の列情報
112
IBM Informix: DB-Access ユーザーズ ガイド
インデックス情報の表示
図 95 に、cust_calls 表で「Indexes」オプションを選択したときに表示される種類の情
報を示します。 c_num_dt_ix インデックスは、cust_calls 表の 2 つの列に定義され
た B ツリー インデックスです。 c_num_cus_ix インデックスは、cust_calls 表の 1
つの列に定義された B ツリー インデックスです。
Index name
Owner
Type/Clstr
Access_Method
Columns
c_num_dt_ix
velma
unique/No
B-Tree
c_num_cus_ix
velma
dupls/No
B-Tree
customer_num
call_dtime
customer_num
図 95. インデックス情報の表示
以下の表は、表示の中のそれぞれの列の意味を示したものです。
表示列
説明
Index Name
インデックスの名前
Owner
インデックスの所有者
Type
インデックスの型 (一意または重複)
Clstr
インデックスがクラスタ化されているかどうかを示
します。 (クラスタ化されたインデックスにより、
インデックスと同じ順序で表が物理的に再配列され
ます。)
Access Method
インデックスのアクセス方法 (B ツリーまたは機能)
Columns
インデックスが定義される 1 つ以上の列
データベース サーバで使用可能なインデックスの型についての詳細は、「IBM Informix:
パフォーマンス ガイド」を参照してください。
Dynamic Server
Dynamic Server が許可するユーザ定義の副アクセス方法をベースにしたインデックスを
含め、B ツリー以外のインデックスの情報を表示することができます。例えば、図 96
に示すインデックスは、DataBlade モジュールが提供する Fulltext アクセス方法をベー
スにしています。
Index name
text_idx
Owner
wilma
Type/Clstr
dupls/No
Access_Method
Fulltext
Columns
zone_descr
図 96. DataBlade モジュールのインデックスの情報の表示
第 5 章 「Table」オプション
113
ユーザ定義のアクセス方法については、DataBlade の資料を参照するか、アクセス方法
の資料を参照してください。
Dynamic Server の終り
表レベルのアクセス権の表示
図 97 に、cust_calls 表で「Privileges」オプションを選択した場合に表示される、表レ
ベルのアクセス権情報の種類を示します。
User
Select
public All
Update
Insert
Delete
Index
Alter
All
Yes
Yes
Yes
No
図 97. アクセス権情報の表示
ユーザのログインが別個にリストされていない限り、そのユーザは、public (すべての
ユーザ用の一般カテゴリ) に与えられたアクセス権を持っていることになります。
データベース レベル アクセス権に関する情報が必要な場合は、SELECT 文を使用し
て、sysusers システム カタログ表にアクセスしてください。
参照アクセス権の表示
図 98 に、参照整合性を持つ表で「References」オプションを選択した場合に表示される
情報の種類を示します。
User
Column References
betty
col1
col2
col3
All
None
wilma
public
図 98. 参照情報の表示
この表示は、以下の表レベル参照アクセス権を示します。
v ユーザ betty は、指定された表の列 1、2、および 3 を参照できる。
v ユーザ wilma は、表内のすべての列を参照できる。
v public に付与されたアクセス権しか持っていないユーザは、表内のどの列にもアクセ
スできない。
114
IBM Informix: DB-Access ユーザーズ ガイド
列制約とデフォルトの表示
「INFO」メニューから「cOnstraints」オプションを選択すると、図 99 に示すような
「CONSTRAINTS」メニューが表示されます。
CONSTRAINTS - mytab:
Reference Primary Check Unique Defaults Exit
Referenced and referencing options.
------------------mydata@mydbserv-------------- Press CTRL-W for Help -------
図 99. 「CONSTRAINTS」メニュー
「CONSTRAINTS」メニューでは、以下のオプションから選択することができます。
オプション
目的
説明箇所
Reference
指定された表と関連付けられた参照
(外部キー) 制約を表示します。
115 ページの『参照制約の表示』
Primary
指定された表の主キー列を表示しま
す。
図 103
Check
指定された表の列のチェック制約を
表示します。
図 104
Unique
一意のデータを含む必要のある列を
リストします。
なし
Defaults
デフォルト値が定義されている列と
そのデフォルト値をリストします。
なし
Exit
「INFO」メニューに戻ります。
なし
参照制約の表示
「CONSTRAINTS」メニューから「Reference」オプションを選択すると、図 100 に示す
ような「REFERENCER」メニューが表示されます。
REFERENCE - mytab: Referencing referenceD Exit
Display foreign key constraints.
-----------------mydata@mydbserv-------------- Press CTRL-W for Help --------
図 100. 「REFERENCE」メニュー
「REFERENCE」メニューにより、以下の情報が表示されます。
v 外部キー (参照) 制約
v 現行の表の列
v カスケード削除の有効化
v 被参照列 (別の表からの列によって外部キーとして参照される列)
第 5 章 「Table」オプション
115
図 101 に示すように、「REFERENCE」メニューで「Referencing」オプションを選択し
て、現行の表の外部キー制約を表示します。
REFERENCE - myaccts: Referenc referenceD Exit
Display referential constraints.
-----------------sub_accounts -----------Press CTRL-W for Help ---------------Constraint Name
r107_13
Referencing Column
Referenced Table
ref_num
sub_accounts
ref_type
Referenced Column
acc_num
acc_type
CD
Y
r107_13
ref_num
ref_type
acc_num
Y
accounts
acc_type
図 101. 参照側の情報を示す「REFERENCE」メニュー
図 102 に示すように、「REFERENCE」メニューで「referenceD」オプションを選択し
て、現行の列を外部キーとして参照する、他の表および列を表示します。
REFERENCE - myaccts: Referenc referenceD Exit
Display columns which have foreign keys which reference this table.
------------------accounts ------------Press CTRL-W for Help -----------------Constraint Name
r107_13
Referenced Column
Referencing Table
acc_num
sub_accounts
acc_type
Referencing Column
ref_acc
ref_type
CD
Y
図 102. 被参照側の情報を示す「REFERENCE」メニュー
「Exit」を選択すると、「CONSTRAINTS」メニューに戻ります。
主キー制約およびチェック制約の表示のサンプル
図 103 に、主キーを構成する列を示します。この表示は、「CONSTRAINTS」メニュー
から「Primary」オプションを選択した結果です。
CONSTRAINTS - mytab: References Primary Check Unique Defaults Exit
Primary key constraints
-----------------mydata@mydbserv------------------ Press CTRL-W for Help -----Constraint Name Column Name
constraint1
assembly
partnum
図 103. 主キー制約情報を示す「CONSTRAINTS」メニュー
図 104 に示すように、「CONSTRAINTS」メニューで「Check」オプションを選択し
て、現行の表の列に配置されたチェック制約を表示します。
116
IBM Informix: DB-Access ユーザーズ ガイド
CONSTRAINTS - mytab: Reference Primary Check Unique Defaults Exit
Display check constraints.
--------------------mydata@mydbserv------------- Press CTRL-W for Help ------Constraint name
Value
cons2
(column1 > (column2 * 100 - 1000 + column1 / 2 column2/20 + 40 * 3 - 55 * column2 + 77 * column1))
cons3
column2 > column3
cons4
column3 > 100
図 104. チェック制約情報を示す「CONSTRAINTS」メニュー
トリガの表示
「INFO」メニューから「triGgers」オプションを選択すると、図 105 に示すような、
「INFO FOR TRIGGER」画面が表示されます。
INFO FOR TRIGGER>>
Choose a trigger with the Arrow Keys, or enter a name, then press Return.
------------------mydata@mydbserv--------------- Press CTRL-W for Help -----updrec_t
図 105. 「INFO FOR TRIGGER」画面
現行の表のトリガ名のリストから、トリガを選択します。トリガを選択したくない場合
は、割込みキーを押すと「TABLE INFO」メニューに戻ります。
選択されたトリガのヘッダと本体情報が 1 画面に収まれば、図 106 に示したように、
トリガ情報を表示した「INFO」メニューが再表示されます。
INFO - updrec_t: .... triGgers Status Table Exit
Display header and body information for a trigger.
----------------- mystores@dbserver1 ----------- Press CTRL-W for Help -----create trigger updrec_t
unit_price on stock
referencing old as pre_upd
new as post_upd
(insert into log_record values (stock_num, CURRENT,
pre_upd.unit_price, post_upd.unit_price)) for each row;
図 106. 「INFO」メニューでのトリガ情報の表示
第 5 章 「Table」オプション
117
図 106 はトリガのヘッダ情報を示したもので、CREATE TRIGGER 文とトリガ名、イベ
ントをトリガする SQL 文、および参照節からなります。トリガの本体は、トリガ アク
ションです。 図 106 では、トリガ アクションは INSERT 文です。
トリガが「INFO」メニューの 1 画面に収まらない場合は、画面の上部にあるメニュー
を使用して、以下のようにしてください。
v N キーを押すか、または「Next」オプションが強調表示されていれば Enter キーを押
して、次画面のトリガ情報に進みます。情報全体を通してページを送るには、必要な
だけ続けて N キーまたは Enter キーを押してください。
v 任意の時点で「Restart」を選択すると、トリガ情報が最初のページから表示されま
す。
v 「TABLE」メニューに戻るには、「Exit」を選択します。
Extended Parallel Server
Extended Parallel Server はトリガをサポートしていません。
Extended Parallel Server の終り
フラグメント化情報の表示
図 107 に、ラウンド ロビン フラグメンテーション ストラテジを使用して作成された
インデックス付けされた表で「Fragments」オプションを選択した場合に表示される情報
の種類を示します。
Idx/Tbl Name
cust
cust
cust
cust
cust
cust
Dbspace
dbspace1
dbspace2
rootdbs
dbspace1
dbspace2
rootdbs
Type
Expression
T
T
T
I
I
I
図 107. 表とインデックスの両方にラウンド ロビン ストラテジが適用されている場合のフラグメン
ト化情報
「Idx/Tbl Name」は、明示的にフラグメント化されたオブジェクトを示しています。
Dynamic Server
Dynamic Server を使用している場合、表示に「Type」列が含まれ、行上のフラグメン
トがインデックスの一部なのか、表データなのかを示します。 図 107 で、cust 表はラ
ウンド ロビン ストラテジを使用して作成されていますが、インデックスはストラテジ
を指定せずに作成されたものです。この場合、インデックスは、デフォルトの DB 領域
118
IBM Informix: DB-Access ユーザーズ ガイド
に配置されます。
Dynamic Server の終り
インデックスを作成するときに、以下の文を使用して、フラグメンテーション ストラテ
ジを適用しているものとします。
create index
custnum <
custnum >
remainder
idx on cust(custnum) fragment by expression
200 in dbspace1,
200 in dbspace2,
in rootdbs;
この場合、フラグメント化の表示は、図 108 のようになります。
Idx/Tbl Name
cust
cust
cust
idx
idx
idx
Dbspace
dbspace1
dbspace2
rootdbs
dbspace1
dbspace2
rootdbs
Type
Expression
T
T
T
I
I
I
(custnum < 200)
(custnum > 200)
remainder
図 108. 表とインデックスが異なるストラテジを持つ場合のフラグメント化情報
フラグメント化が明示的にインデックスに適用されたため、「Idx/Tbl Name」はインデ
ックス名を示しています。
表の削除
「TABLE」メニューの「Drop」オプションを使用して、データベースから既存の表のス
キーマを削除します。 D キーを押すか、「Drop」を強調表示して Enter キーを押しま
す。 図 109 に示すような、「DROP TABLE」画面が表示されます。
DROP TABLE >>
Enter the table name you wish to drop from the database.
----------------- mydata@mydbserv --------------- Press CTRL-W for Help ----clients
customer
orders
図 109. 「DROP TABLE」画面
この画面には、現行データベースに存在する表の名前がリストされます。表は、以下の
いずれかの方法で削除できます。
v 表名を入力して、Enter キーを押す。現行データベースにない表を削除したい場合、
この方法を使用し、絶対パス名を指定する必要があります。
第 5 章 「Table」オプション
119
v 矢印キーを使用してデータベースから削除したい表の名前を強調表示し、Enter キー
を押す。
表を削除せずに「DROP TABLE」画面を終了するには、割込みキーを押します。これに
より、「TABLE」メニューに戻ります。
警告: 表を削除すると、その表とその中に含まれるすべてのデータを削除することにな
ります。
削除する表を選択した後、DB–Access は 図 110 に示すような「CONFIRM」メニューを
表示し、表を削除する前に、本当に削除してよいかどうかを尋ねます。
CONFIRM: No Yes
No, I do not want to drop it.
-----------------mydata@mydbserv------------------ Press CTRL-W for Help -----clients
customer
orders
図 110. 「CONFIRM」メニュー
誤って表を削除してしまわないように、デフォルトは「No」になっています。表は明示
的に削除する必要があります。このため、強調表示された表を削除したければ、Y キー
を押すか、または右矢印キーを使用して「Yes」を強調表示して、Enter キーを押しま
す。これにより、DB–Access は表を削除します。
関連資料
表のスキーマまたは構造を作成または変更する場合には、以下のマニュアルを用意して
ください。
v 表または列に名前を付ける方法については、「IBM Informix: SQL ガイド: 構文」を
参照してください。
v データ型については、「IBM Informix: SQL ガイド: 参照」を参照してください。
v フラグメント化および格納領域の割振りについては、「IBM Informix: 管理者ガイ
ド」を参照してください。
v フラグメント化、インデックス、およびエクステント サイズに関する推奨事項につ
いては、「IBM Informix: パフォーマンス ガイド」を参照してください。
v デフォルト以外のロケール名および文字データ型 (文字 (CHAR) 型、可変長文字
(VARCHAR) 型、各国語文字 (NCHAR) 型、各国語可変長文字 (NVARCHAR) 型、
およびテキスト (TEXT) 型) については、「IBM Informix: GLS ユーザーズ ガイド」
を参照してください。
120
IBM Informix: DB-Access ユーザーズ ガイド
v データベースの設計、実装、および管理については、「IBM Informix: データベース
設計および実装 ガイド」を参照してください。
第 5 章 「Table」オプション
121
122
IBM Informix: DB-Access ユーザーズ ガイド
第 6 章 「Connection」オプションと「Session」オプション
「Connection」オプションの選択. .
データベース環境への接続 . .
必要なアクセス権 . . . .
暗黙的なクローズ . . . .
データベース環境からの接続解除
トランザクション処理 . . . .
「Session」オプションの選択 . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
123
124
126
127
127
128
129
本章について
本章では、メイン メニューの「Connection」オプションと「Session」オプションについ
て説明します。
特定のデータベース サーバとデータベースに接続するか、または現行データベース環境
から明示的に接続解除したい場合には、「Connection」オプションを使用します。現行
の DB–Access セッションに関する情報を表示するには、「Session」オプションを使用
します。
広域言語サポート
DB–Access などのクライアント アプリケーションとデータベースの間の接続を確立す
るために適用される、GLS の考慮事項については、「IBM Informix: GLS ユーザーズ
ガイド」を参照してください。データベース サーバは、クライアントによって渡される
クライアント ロケール情報を検証し、データベース ロケールを検査し、クライアント
とデータベース間でデータを転送するためのサーバ処理ロケールを決定します。
広域言語サポート の終り
「Connection」オプションの選択
メイン メニューから、C キーを押して (または「Connection」オプションを強調表示さ
せて Enter キーを押して)、図 111 に示すような、「CONNECTION」メニューを表示
します。
© Copyright IBM Corp. 1996, 2002
123
CONNECTION: Connect Disconnect
Connect to a database environment.
Exit
------------------------------------------------- Press CTRL-W for Help -----
図 111. 「CONNECTION」メニュー
「CONNECTION」メニューには、以下のオプションが表示されます。
オプション
目的
説明箇所
Connect
データベース環境に接続します。
124 ページの『データベース環境
への接続』
Disconnect
現行のデータベース環境から接続解
除します。
127 ページの『データベース環境
からの接続解除』
Exit
DB-Access メイン メニューに戻り
ます。
なし
データベース環境への接続
既存のデータベース サーバに接続するには、「CONNECTION」メニューから
「Connect」オプションを選択します。 DB–Access は、使用可能なデータベース サーバ
のリストを表示し、選択するようにプロンプトを出します。データベース サーバを選択
すると、DB–Access は、図 112 に示すようにユーザ名を入力するようプロンプトを出し
ます。
USER NAME >>
Enter the login name you want to use for this connection.
------------------------------------------------- Press CTRL-W for Help ----coral
cowry
seahorse
starfish
図 112. 「USER NAME」プロンプト画面
「USER NAME」画面にユーザ ID を指定せずに Enter キーを押すと、選択されたデー
タベース サーバ上のデータベースをリストする「SELECT DATABASE」画面が表示さ
れます。
124
IBM Informix: DB-Access ユーザーズ ガイド
ターゲット データベース サーバに接続するときに DB–Access が使用するログイン名
を入力すると、DB–Access は、図 113 に示すような「PASSWORD」画面を表示しま
す。
PASSWORD >>
Enter the password associated with the user identifier.
-------------------------------------------------- Press CTRL-W for Help ----coral
cowry
seahorse
starfish
図 113. 「PASSWORD」画面
「PASSWORD」画面から、ユーザ ID と関連付けられたパスワードを入力するか、また
はパスワードを入力したくなければ Enter を押します。セキュリティ上の理由で、画面
に入力されたパスワードは表示されません。
ヒント: 「USER NAME」画面で CRTL-C を押した場合、DB–Access は、セッションに
割り込むのではなく、指定されたデータベース サーバに接続しようとする場合
があります。この画面で CRTL-C を押すことは、現行のユーザ名を使用するの
と同等であるため、この状態が発生します。
ユーザ ID とパスワードの組合せが有効であれば、ターゲット データベース サーバに
接続されます。次に、そのデータベース サーバからデータベースを選択することができ
ます。 図 114 に示すような、「SELECT DATABASE SERVER」画面が表示されま
す。
SELECT DATABASE SERVER>>
Select a server with the Arrow Keys, or enter a name, then press Return.
--------------------------------------------- Press CTRL-W for Help -------coral
cowry
seahorse
starfish
図 114. 「SELECT DATABASE SERVER」画面
「SELECT DATABASE SERVER」画面は、UNIX の場合には
$INFORMIXDIR/etc/sqlhosts ファイルから、Windows NT の場合にはレジストリ内の
sqlhosts エントリから、データベース サーバのアルファベット順のリストを表示しま
す。最初の項目が強調表示されます。 Enter キーを押してそのデータベース サーバを
第 6 章 「Connection」オプションと「Session」オプション
125
選択するか、または別のデータベース サーバを選択します。項目が複数ページに渡って
いる場合は、矢印キーを使用してカーソルを移動し、省略記号 (...) を強調表示させる
と、次ページのデータベース サーバが表示されます。
必要なアクセス権
特定のデータベースにアクセスするには、アクセス権が必要です。指定されたデータベ
ース サーバに接続するためのアクセス権がないと、エラー メッセージが表示されま
す。その場合は、アクセス権を持っている別のデータベース サーバを選択するか、また
はそのデータベース サーバに接続するためのアクセス権をデータベース サーバ管理者
に要求してください。
指定されたデータベース サーバに対して適切なアクセス権を持っている場合には、その
データベース サーバ上で、使用するデータベースを指定するようプロンプトが出されま
す。
「SELECT DATABASE」画面が表示されたときに、 図 115 に示すように、指定された
データベース サーバの名前が強調表示されます。
SELECT DATABASE >>
Select a database with the Arrow Keys, or enter a name, then press Return.
---------------------- @coral ----------------- Press CTRL-W for Help -------borabora@coral
huahine@coral
moorea@corala
図 115. 「SELECT DATABASE」画面
「SELECT DATABASE」画面には、指定されたデータベース サーバ上のすべての使用
可能なデータベースが、アルファベット順にリストされます。「SELECT DATABASE」
画面上のデータベースのリストは、現行の接続によって変わります。例えば、以下のよ
うになります。
v 現行接続が存在しないか、または現行接続が暗黙的なデフォルト接続である場合、
DBPATH 環境変数にリストされたすべてのデータベースが表示されます。
v 現行の明示的な接続が存在する場合、現行のサーバに関係する DBPATH の中のすべ
てのデータベースが表示されます。
DBPATH 環境変数の設定については、「IBM Informix: SQL ガイド: 参照」を参照して
ください。
データベースを選択するには、データベース名を入力するか、または矢印キーを使用し
てデータベースの名前を強調表示してから、Enter キーを押します。
126
IBM Informix: DB-Access ユーザーズ ガイド
現行の接続で「CONNECT」メニューに入り、新しい接続を続ける場合、DB–Access
は、前の環境から接続解除して、その環境に属しているすべてのデータベースをクロー
ズします。詳しくは、127 ページの『暗黙的なクローズ』を参照してください。
存在しないデータベースまたは DB–Access が探し出せないデータベースの名前を入力
すると、エラー メッセージが表示されます。
データベースを選択せずに「SELECT DATABASE」画面を終了するには、割込みキーを
押します。「CONNECTION」メニューに戻りますが、データベース サーバの接続は切
断されません。
暗黙的なクローズ
以下の状態においては、新しい環境に接続すると、DB–Access は、すべてのオープン状
態の接続またはデータベースをクローズします。
v 現行のデータベース環境から明示的に接続解除せずに、新しいデータベース環境に接
続すると、DB–Access は、明示的な接続解除とデータベースのクローズを行います。
v database@server に接続してから、データベースをクローズすると、そのデータベース
サーバは接続されたままになります。
v データベース サーバに接続し、データベースをオープンしてから、そのデータベー
スをクローズすると、データベース サーバは接続されたままになります。
v データベースをオープンしてから、データベース サーバに接続しようとすると、
DB–Access は、暗黙的な接続解除を実行して、そのデータベースをクローズします。
1 つの接続だけが許可されます。別のデータベース サーバに接続するには、オープ
ンしているデータベースに関連付けられたデータベース サーバから接続解除する
か、またはそのデータベースをクローズする必要があります。
まだ未解決のトランザクションがあるデータベースを DB–Access がクローズする必要
がある場合は、それらのトランザクションをコミットするかロール バックするかを尋ね
るプロンプトが出されます (128 ページの『トランザクション処理』に説明がありま
す)。
データベース環境からの接続解除
現行のデータベース サーバから接続解除して、現行データベースをクローズするには、
「CONNECTION」メニューから「Disconnect」オプションを選択します。 図 116 に示
すような、「DISCONNECT」確認メニューが表示されます。
DISCONNECT: Yes No
Disconnect from the current database environment.
------------------- moorea@coral --------------- Press CTRL-W for Help -------
図 116. 「DISCONNECT」確認メニュー
第 6 章 「Connection」オプションと「Session」オプション
127
「CONNECTION」メニューから「Disconnect」オプションを選択する場合、
「DISCONNECT」確認画面で、本当に接続解除するかどうかの決定を確認する必要があ
ります。以下の 2 つのオプションがあります。
v 接続解除することを確定するには、デフォルトの「Yes」オプションを強調表示させ
て、Enter キーを押します。 DB–Access は、データベース サーバからの接続解除を
行い、データベースをクローズします。
v 接続解除したくない場合は、N キーを押すか、または右矢印キーを使用して「No」を
強調表示して、Enter キーを押します。 DB–Access は「CONNECTION」メニューに
戻ります。
トランザクション処理
トランザクション ログ機能を持つデータベースでは、明示的に現行データベース環境か
ら接続解除する場合、または別の環境に接続する場合は、DB–Access がオープンのデー
タベースを強制的にクローズすることになるので、トランザクションを確定するのかロ
ール バックするのかを尋ねるプロンプトが出されます。 図 117 に示すような、
「TRANSACTION」メニューが表示されます。
TRANSACTION: Commit Rollback
Commit the current transaction.
---------------- moorea@coral ---------------- Press CTRL-W for Help --------
図 117. トランザクション付きのデータベース用の「TRANSACTION」メニュー
「TRANSACTION」メニューにより、現行データベースをクローズする前に、確実にア
クティブ トランザクションのコミットまたはロール バックのいずれかを行うことがで
きます。以下のメニュー オプションがあります。
v デフォルトは「Commit」です。 Enter キーを押すと、DB–Access は、トランザクシ
ョンをコミットして、データベースをクローズします。
v トランザクションをロール バックしたい場合には、矢印キーを使用して
「Rollback」オプションに強調表示を移動します。 Enter キーを押すと、DB–Access
は、トランザクションをロール バックして、データベースをクローズします。
警告: オプションの選択には、注意してください。「Commit」オプションを選択すると
きに、希望しないトランザクションをコミットしてしまうことがあります。
「Rollback」を選択すると、新しいトランザクションを失ってしまうことになりま
す。
割込みキーを押すと、DB–Access は、トランザクションをコミットまたはロール バッ
クせずに、「DATABASE」メニューを表示します。
128
IBM Informix: DB-Access ユーザーズ ガイド
「Session」オプションの選択
メイン メニューから、S キーを押すか、または「Session」オプションを強調表示して、
Enter キーを押します。画面上は DB–Access メイン メニューのままで、現行の
DB–Access セッションに関する情報が表示されます。例えば、図 118 は、以下の情報を
表示しています。
v このセッションのデータベース サーバの名前は coral です。
v データベース サーバ タイプは Dynamic Server です。このサーバ タイプは、ダイナ
ミック スケーラブル アーキテクチャをベースとした、すべての Informix データベ
ース サーバのことを指します。例えば、Dynamic Server を使用していれば、Dynamic
Server と表示されます。
v サーバは carrots という名前のホストに接続されます。
v サーバはマルチスレッド サーバです。
DB-ACCESS: Query-language Connection Database Table Session Exit
Retrieve information about the current DB-Access session.
-------------------- @coral --------------- Press CTRL-W for Help -------Server
coral
OnLine
Connected to host carrots
Multi-threaded
図 118. Dynamic Server インスタンスに対するサンプルのセッション情報が表示されたメイン メニ
ュー
各国語サポート
各国語をサポートする一般のデータベースを実行している場合には、「Session」オプシ
ョンで、照合順序と文字のタイプが表示されます。
各国語サポート の終り
広域言語サポート
「Session」オプションでは広域言語サポート属性は表示されませんが、66 ページの『デ
フォルト以外のロケール情報の取得』に示す方法を使用して、それらの設定値を取得す
ることができます。
広域言語サポート の終り
セッション情報の画面を終了するには、メイン メニューで別のオプションを選択しま
す。
第 6 章 「Connection」オプションと「Session」オプション
129
130
IBM Informix: DB-Access ユーザーズ ガイド
付録 A. SQL 文のオンライン ヘルプの読み方
この付録では、DB–Access オンライン ヘルプ画面で、SQL 文の構文を表すのに使用さ
れている規則について説明します。 SQL 文のオンライン ヘルプは、以下のいずれかの
方法で要求することができます。
v 「SQL」メニューの「New」、「Modify」、または「Use-editor」オプションを強調表
示させて、CTRL-W を押す。
v 「SQL」メニューの「NEW」または「MODIFY」画面で、CTRL-W を押す。
DB–Access で、SQL 文のオンライン ヘルプを要求したときに表示される構文ダイヤグ
ラムの形式は、「IBM Informix: SQL ガイド: 構文」の構文ダイヤグラムのものとは異
なります。
以下に、DB–Access オンライン ヘルプにおける SQL 文の構文の規則およびルールを
挙げます。
ABC
SQL 文の中の大文字で表示された用語は、キーワードです。キーワー
ドは、以下の例のように、大文字小文字には関係なく、示されたとお
りに入力してください。
CREATE SYNONYM synonym-name
この構文では、スペースや文字を追加または削除することなく、キー
ワードを CREATE SYNONYM または create synonym と入力する必
要があることを示しています。
abc
小文字で示される用語は、値を置き換えます。前の例では、
synonym-name の値を置き換える必要があります。
( )
括弧は、示されている通りに入力します。括弧は SQL 文の構文の一
部であり、特殊な記号ではありません。
[ ]
大括弧は、文の一部として入力しないでください。この括弧は、文の
オプション部分を囲みます。例えば、以下のようになります。
CREATE [TEMP] TABLE
この構文は、CREATE TABLE または CREATE TEMP TABLE のい
ずれかを入力できることを示します。
|
縦線は、複数のオプションの中から選択することを示しています。例
えば、以下のようになります。
[VANILLA | CHOCOLATE [MINT] | STRAWBERRY]
© Copyright IBM Corp. 1996, 2002
131
この構文は、VANILLA、CHOCOLATE、または STRAWBERRY のい
ずれかを入力することができ、CHOCOLATE を入力する場合には、
MINT も入力できることを示しています。
{ }
複数のオプションの中から 1 つだけを選択しなければならない場合、
それらのオプションは中括弧で囲まれ、縦線で区切られます。例え
ば、以下のようになります。
{GUAVA | MANGO | PASSIONFRUIT}
この構文は、GUAVA、MANGO、または PASSIONFRUIT のいずれか
を入力しなければならないが、1 つだけしか入力することができない
ことを示しています。
...
省略記号は、その省略記号の直前の項目と同様の項目を無限に追加入
力できることを示しています。例えば、以下のようになります。
old-column-name
...
この構文は、最初の列名の後に、一連の既存の列名を入力できること
を示しています。
「IBM Informix: SQL ガイド: 構文」に、より詳細な構文ダイヤグラムの説明と、その
マニュアルで使用されている構文ダイヤグラムの形式の解釈方法の説明があります。
DB–Access のオンライン ヘルプの使用方法についての一般的な説明は、28 ページの
『ヘルプ画面の使用』を参照してください。
132
IBM Informix: DB-Access ユーザーズ ガイド
付録 B. デモンストレーション SQL
この付録では、DB–Access で使用可能なさまざまなコマンド ファイルの内容を示しま
す。これらのコマンド ファイルは、コマンド行から表示したときにはすべて .sql とい
う拡張子を持っていますが、SQL「CHOOSE」メニューでは拡張子が表示されません。
これらのコマンド ファイル内のキーワードは、SQL 文を読みやすくするように、大文
字で表示されます。実際のコマンド ファイル内のキーワードは、小文字です。
重要: この付録では、コマンド ファイルをアルファベット順にリストしていますが、表
を作成するコマンド ファイルは、そのような順序で実行するとエラーになりま
す。表を作成する順序は、それらの表をリンクする参照制約のために、きわめて
重要になります。
「SQL」メニューで「Choose」オプションを選択すると、「CHOOSE」画面が表示され
ます。この画面には、133 ページの図 119 に類似した、ユーザがアクセスできるコマン
ド ファイルのリストが表示されます。これらのファイルは、stores_demo データベー
スと一緒に組み込まれています。 その他の .sql ファイルについては、この付録の後の
方で説明します。
CHOOSE >> Choose a command file with the Arrow Keys, or enter a name, then press Return.
----------------- stores_demo @dbserver1 -------------- Press CTRL-W for Help -----alt_cat
c_state
d_trig
sel_ojoin1
c_calls
c_stock
d_view
sel_ojoin2
c_cat
c_stores_demo
del_stock
sel_ojoin3
c_custom
c_table
ins_table
sel_ojoin4
c_index
c_trig
opt_disk
sel_order
c_items
c_type
sel_agg
sel_sub
c_manuf
c_view1
sel_all
sel_union
c_orders
c_view2
sel_group
upd_table
c_proc
d_proc
sel_join
図 119. 「CHOOSE」画面にリストされたコマンド ファイル
デモンストレーション データベースと一緒に組み込まれたコマンド ファイルが見つか
らない場合には、以下をチェックしてください。
© Copyright IBM Corp. 1996, 2002
133
1. デモンストレーション データベースの初期化スクリプトを実行したときに、デモン
ストレーション SQL コマンド ファイルをユーザのカレント ディレクトリにコピー
したかどうか。コピーしていなければ、初期化スクリプトを再実行して、それらのコ
マンド ファイルをコピーできます。
2. デモンストレーション SQL コマンド ファイルをインストールしたディレクトリか
ら DB–Access を開始したかどうか。そのディレクトリから開始していなければ、
DB–Access をいったん終了して、該当のディレクトリに変更してから、DB–Access
を再び開始してください。
初期化スクリプトの実行、コマンド ファイルのコピー、および DB–Access の開始につ
いての説明は、 1 ページの『第 1 章 DB-Access 入門』を参照してください。
これらのコマンド ファイルは、SQL およびデモンストレーション データベースの練習
のために、DB–Access で使用します。データベース表および SQL ファイルをリフレッ
シュしたい場合には、いつでもデモンストレーション データベース初期化スクリプトを
再実行することができます。
リレーショナル データベース モデルのための SQL ファイル
この節で説明する SQL ファイルは、stores_demo デモンストレーション データベー
スと一緒に組み込まれており、stores_demo スキーマに準拠しています。
stores_demo スキーマについて詳しくは、「IBM Informix: SQL ガイド: 参照」を参照
してください。
alt_cat.sql
以下のコマンド ファイルは、catalog 表を変更します。このコマンド ファイルは、
catalog 表の既存の制約 aa を削除し、カスケード削除を指定する新しい制約 ab を追
加します。ログ機能付きのデータベースでカスケード削除を練習するには、このコマン
ド ファイルを使用した後で、del_stock.sql コマンド ファイルを使用することができ
ます。
ALTER TABLE catalog DROP CONSTRAINT aa;
ALTER TABLE catalog ADD CONSTRAINT
(FOREIGN KEY (stock_num, manu_code) REFERENCES stock
ON DELETE CASCADE CONSTRAINT ab);
c_calls.sql
以下のコマンド ファイルは、cust_calls 表を作成します。
CREATE TABLE cust_calls
(
customer_num
call_dtime
user_id
call_code
call_descr
134
INTEGER,
DATETIME YEAR TO MINUTE,
CHAR(18) DEFAULT USER,
CHAR(1),
CHAR(240),
IBM Informix: DB-Access ユーザーズ ガイド
res_dtime
DATETIME YEAR TO MINUTE,
res_descr
CHAR(240),
PRIMARY KEY (customer_num, call_dtime),
FOREIGN KEY (customer_num) REFERENCES customer (customer_num),
FOREIGN KEY (call_code) REFERENCES call_type (call_code)
);
c_cat.sql
以下のコマンド ファイルは、catalog 表を作成します。このコマンド ファイルには制
約 aa が含まれており、ログ機能付きのデータベースで alt_cat.sql および
del_stock.sql コマンド ファイル内の SQL 文を実行して、カスケード削除を練習する
ことができます。
CREATE TABLE catalog
(
catalog_num
SERIAL(10001),
stock_num
SMALLINT NOT NULL,
manu_code
CHAR(3) NOT NULL,
cat_descr
TEXT,
cat_picture
BYTE,
cat_advert
VARCHAR(255, 65),
PRIMARY KEY (catalog_num),
FOREIGN KEY (stock_num, manu_code) REFERENCES stock
CONSTRAINT aa
);
c_custom.sql
以下のコマンド ファイルは、customer 表を作成します。
CREATE TABLE customer
(
customer_num
SERIAL(101),
fname
CHAR(15),
lname
CHAR(15),
company
CHAR(20),
address1
CHAR(20),
address2
CHAR(20),
city
CHAR(15),
state
CHAR(2),
zipcode
CHAR(5),
phone
CHAR(18),
PRIMARY KEY (customer_num)
);
c_index.sql
以下のコマンド ファイルは、customer 表の zipcode 列にインデックスを作成しま
す。
CREATE INDEX zip_ix ON customer (zipcode);
付録 B. デモンストレーション SQL
135
c_items.sql
以下のコマンド ファイルは、items 表を作成します。
CREATE TABLE items
(
item_num
SMALLINT,
order_num
INTEGER,
stock_num
SMALLINT NOT NULL,
manu_code
CHAR(3) NOT NULL,
quantity
SMALLINT CHECK (quantity >= 1),
total_price
MONEY(8),
PRIMARY KEY (item_num, order_num),
FOREIGN KEY (order_num) REFERENCES orders (order_num),
FOREIGN KEY (stock_num, manu_code) REFERENCES stock
(stock_num, manu_code)
);
c_manuf.sql
以下のコマンド ファイルは、manufact 表を作成します。
CREATE TABLE manufact
(
manu_code
CHAR(3),
manu_name
CHAR(15),
lead_time
INTERVAL DAY(3) TO DAY,
PRIMARY KEY (manu_code)
);
c_orders.sql
以下のコマンド ファイルは、orders 表を作成します。
CREATE TABLE orders
(
order_num
SERIAL(1001),
order_date
DATE,
customer_num
INTEGER NOT NULL,
ship_instruct
CHAR(40),
backlog
CHAR(1),
po_num
CHAR(10),
ship_date
DATE,
ship_weight
DECIMAL(8,2),
ship_charge
MONEY(6),
paid_date
DATE,
PRIMARY KEY (order_num),
FOREIGN KEY (customer_num) REFERENCES customer (customer_num)
);
c_proc.sql
以下のコマンド ファイルは、SPL ルーチンを作成します。このルーチンは、顧客のフ
ルネームと住所を読み取り、ラストネーム (lastname) を唯一の引数として使用します。
136
IBM Informix: DB-Access ユーザーズ ガイド
このルーチンは、CREATE PROCEDURE の従来の一般的な使用法を示しています。
Dynamic Server
ルーチンから値を戻したい場合には、関数 を定義するのが、Dynamic Server では、
SQL 標準に従った好ましい方法です。
Dynamic Server の終り
CREATE PROCEDURE read_address (lastname CHAR(15))
RETURNING CHAR(15), CHAR(15), CHAR(20), CHAR(15), CHAR(2), CHAR(5);
DEFINE p_fname, p_city CHAR(15);
DEFINE p_add CHAR(20);
DEFINE p_state CHAR(2);
DEFINE p_zip CHAR(5);
SELECT fname, address1, city, state, zipcode
INTO p_fname, p_add, p_city, p_state, p_zip
FROM customer
WHERE lname = lastname;
RETURN p_fname, lastname, p_add, p_city, p_state, p_zip;
END PROCEDURE;
c_state
以下のコマンド ファイルは、state 表を作成します。
CREATE TABLE state
(
code
CHAR(2),
sname
CHAR(15),
PRIMARY KEY (code)
);
c_stock.sql
以下のコマンド ファイルは、stock 表を作成します。
CREATE TABLE stock
(
stock_num
SMALLINT,
manu_code
CHAR(3),
description
CHAR(15),
unit_price
MONEY(6),
unit
CHAR(4),
unit_descr
CHAR(15),
PRIMARY KEY (stock_num, manu_code),
FOREIGN KEY (manu_code) REFERENCES manufact
);
c_stores.sql
以下のコマンド ファイルは、stores_demo データベースを作成します。
CREATE DATABASE stores_demo;
付録 B. デモンストレーション SQL
137
c_table.sql
以下のコマンド ファイルは、restock という名前のデータベースを作成した後、その
データベースの中に sports という名前のカスタム表を作成します。
CREATE DATABASE restock;
CREATE TABLE sports
(
catalog_no
stock_no
mfg_code
mfg_name
phone
descript
);
SERIAL UNIQUE,
SMALLINT,
CHAR(5),
CHAR(20),
CHAR(18),
VARCHAR(255)
c_trig.sql
以下のコマンド ファイルは、log_record という名前の表を作成した後、それを更新す
る upqty_i という名前のトリガを作成します。
CREATE TABLE log_record
(item_num
SMALLINT,
ord_num
INTEGER,
username
CHARACTER(8),
update_time DATETIME YEAR TO MINUTE,
old_qty
SMALLINT,
new_qty
SMALLINT);
CREATE TRIGGER upqty_i
UPDATE OF quantity ON items
REFERENCING OLD AS pre_upd
NEW AS post_upd
FOR EACH ROW(INSERT INTO log_record
VALUES (pre_upd.item_num, pre_upd.order_num, USER, CURRENT,
pre_upd.quantity, post_upd.quantity));
Extended Parallel Server
Extended Parallel Server はトリガをサポートしていません。
Extended Parallel Server の終り
c_type.sql
以下のコマンド ファイルは、call_type 表を作成します。
CREATE TABLE call_type
(
call_code
CHAR(1),
code_descr
CHAR(30),
PRIMARY KEY (call_code)
);
138
IBM Informix: DB-Access ユーザーズ ガイド
c_view1.sql
以下のコマンド ファイルは、単一の表に custview というビューを作成して、そのビ
ューのアクセス権を public に付与します。このコマンド ファイルには WITH CHECK
OPTION キーワードが含まれており、基礎となる表に対してそのビューを介して行われ
た変更が、そのビューの定義に違反していないかどうかを検査します。
CREATE VIEW custview (firstname, lastname, company, city) AS
SELECT fname, lname, company, city
FROM customer
WHERE city = ’Redwood City’
WITH CHECK OPTION;
GRANT DELETE, INSERT, SELECT, UPDATE
ON custview
TO public;
c_view2.sql
以下のコマンド ファイルは、orders 表と items 表にビューを作成します。
CREATE VIEW someorders (custnum,ocustnum,newprice) AS
SELECT orders.order_num, items.order_num,
items.total_price*1.5
FROM orders, items
WHERE orders.order_num = items.order_num
AND items.total_price > 100.00;
d_proc.sql
以下のコマンド ファイルは、c_proc.sql コマンド ファイルが作成した SPL ルーチン
を削除します。
DROP PROCEDURE read_address;
d_trig.sql
以下のコマンド ファイルは、c_trig.sql コマンド ファイルが作成したトリガを削除し
ます。
DROP TRIGGER upqty_i;
d_view.sql
以下のコマンド ファイルは、c_view1.sql コマンド ファイルが作成した custview と
いう名前のビューを削除します。
DROP VIEW custview;
del_stock.sql
以下のコマンド ファイルは、在庫番号 102 のところで、stock 表から行を削除しま
す。この削除は、catalog 表に対するカスケード削除です (ただし、関連する製造者コ
付録 B. デモンストレーション SQL
139
ードは manufact 表にそのまま残ります)。ログ機能付きのデータベースのカスケード
削除を練習するには、alt_cat.sql コマンド ファイルの後で、del_stock.sql コマンド
ファイルを使用することができます。
DELETE FROM stock WHERE stock_num = 102;
alt_cat.sql および del_stock.sql コマンド ファイルで SQL 文を実行した後、以下の
問合せを catalog 表で出して、その行が削除されているかどうかを検査します。
SELECT * FROM catalog WHERE stock_num = 102;
stores_demo データベースは変更されています。元のデータベースを再作成するため
に、dbaccessdemo スクリプトを再実行することができます。
ins_table.sql
以下のコマンド ファイルは、c_table.sql コマンド ファイルが作成した sports 表に
1 行を挿入します。
INSERT INTO sports
VALUES (0,18,’PARKR’, ’Parker Products’, ’503-555-1212’,
’Heavy-weight cotton canvas gi, designed for aikido or
judo but suitable for karate. Quilted top with side ties,
drawstring waist on pants. White with white belt.
Pre-washed for minimum shrinkage. Sizes 3-6.’);
opt_disk.sql
以下のコマンド ファイルは、光ディスク サブシステムでの SELECT 文の例を提供し
ます。このコマンド ファイルには、光ディスク ストレージをサポートする、読取り専
用の family() 演算子と volume() 演算子が含まれています。 (これは、光ディスク記憶
サブシステム でのみ使用可能です。)
問合せでは、自転車のヘルメットの写真が入っているボリュームのリストを生成しま
す。自転車のヘルメットの写真が入っているそれぞれのデータ行ごとに、 1 行の出力行
(family、volume) が生成されます。 family() 演算子は光ディスク BLOB 列が格納され
ている光ファミリの名前を戻し、volume() は光ディスク BLOB 列が格納されているボ
リュームの番号を戻します。これらの関数は、光メディアに格納されたデータにのみ有
効です。
SELECT family(cat_picture), volume(cat_picture)
FROM catalog
WHERE stock_num = 110;
sel_agg.sql
以下のコマンド ファイルの中の SELECT 文は、集計関数を使用して、表データの問合
せを行います。この文は、集計関数 MAX と MIN を単一の文に結合したものです。
SELECT MAX (ship_charge), MIN (ship_charge)
FROM orders;
140
IBM Informix: DB-Access ユーザーズ ガイド
sel_all.sql
以下のコマンド ファイルの例には、 Informix に実装された対話型 SQL で使用でき
る、7 つの SELECT 文の節がすべて含まれています。この SELECT 文は、orders 表
と items 表を結合します。またこの文は、列標識として表示ラベル、表の別名、およ
び整数を使用し、データのグループ化と順序付けを行い、結果を一時表に書き込みま
す。
SELECT o.order_num, SUM (i.total_price) price,
paid_date - order_date span
FROM orders o, items i
WHERE o.order_date > ’01/01/90’
AND o.customer_num > 110
AND o.order_num = i.order_num
GROUP BY 1, 3
HAVING COUNT (*) < 5
ORDER BY 3
INTO TEMP temptab1;
sel_group.sql
以下のコマンド ファイルの例には、GROUP BY 節と HAVING 節が含まれています。
通常、HAVING 節は、1 つ以上の修飾条件を形成した後、それらの修飾条件をグループ
に適用することによって、GROUP BY 節を補完するものであり、これは、WHERE 節
が個別の行を修飾する方法と似ています。 (HAVING 節を使用する 1 つの利点は、検
索条件の中に集計を含めることができることであり、WHERE 節の検索条件では集計を
含めることはできません。)
それぞれの HAVING 節では、グループの 1 つの列または集計式を、グループの別の集
計式と比較するか、または制約と比較します。 HAVING 節を使用して、条件をグルー
プ リスト内の列値と集計値の両方に置くことができます。
SELECT order_num, COUNT(*) number, AVG (total_price) average
FROM items
GROUP BY order_num
HAVING COUNT(*) > 2;
sel_join.sql
以下のコマンド ファイルの例は、customer 表と cust_calls 表で、単純結合を使用し
ています。この問合せは、顧客がカスタマ サービスを依頼したことを示す行のみを戻し
ます。
SELECT c.customer_num, c.lname, c.company,
c.phone, u.call_dtime, u.call_descr
FROM customer c, cust_calls u
WHERE c.customer_num = u.customer_num;
sel_ojoin1.sql
以下のコマンド ファイルの例は、2 つの表での単純外部結合を使用しています。
cust_calls 表の前にキーワード OUTER を使用することで、その表を従表にしていま
付録 B. デモンストレーション SQL
141
す。外部結合により、カスタマ サービスを依頼していない顧客であっても、すべての
顧客に関する情報が、問合せによって戻されることになります。主表である customer
表からすべての行が取得され、従表である cust_calls 表からの対応する行に NULL 値
が割り当てられます。
SELECT c.customer_num, c.lname, c.company,
c.phone, u.call_dtime, u.call_descr
FROM customer c, OUTER cust_calls u
WHERE c.customer_num = u.customer_num;
sel_ojoin2.sql
以下のコマンド ファイルの例は、3 番目の表に対する単純結合の結果である、外部結合
を作成します。この 2 番目のタイプの外部結合は、入れ子になった単純結合 と呼ばれ
ます。
この問合せは、まず orders 表と items 表で単純結合を行い、KAR または SHM の
manu_code を持つ品目のすべての注文に関する情報を検索します。次に、外部結合を
行い、この情報を、主表である customer 表からのデータと結合します。オプションの
ORDER BY 節は、データの再編成を行います。
SELECT c.customer_num, c.lname, o.order_num,
i.stock_num, i.manu_code, i.quantity
FROM customer c, OUTER (orders o, items i)
WHERE c.customer_num = o.customer_num
AND o.order_num = i.order_num
AND manu_code IN (’KAR’, ’SHM’)
ORDER BY lname;
sel_ojoin3.sql
以下の SELECT 文の例は、入れ子になった外部結合 と呼ばれる、3 番目のタイプの外
部結合です。これは、3 番目の表への外部結合の結果である外部結合を作成することに
よって、表データに対する問合せを行います。
この問合せは、まず orders 表と items 表で外部結合を行い、KAR または SHM の
manu_code を持つ品目のすべての注文に関する情報を検索します。次に、外部結合を
行い、この情報を、主表である customer 表からのデータと結合します。この問合せ
は、前の例で除去された注文番号を保存し、どちらの製造者コードを持つ品目も含まな
い注文の行を戻します。オプションの ORDER BY 節は、データの再編成を行います。
SELECT c.customer_num, lname, o.order_num,
stock_num, manu_code, quantity
FROM customer c, OUTER (orders o, OUTER items i)
WHERE c.customer_num = o.customer_num
AND o.order_num = i.order_num
AND manu_code IN (’KAR’, ’SHM’)
ORDER BY lname;
142
IBM Informix: DB-Access ユーザーズ ガイド
sel_ojoin4.sql
以下の例は、4 番目のタイプの外部結合を使用して、表データの問合せを行います。こ
の問合せは、2 つの表のそれぞれを 3 番目の表に外部結合した結果である、外部結合を
示します。このタイプの外部結合では、結合関係は、主表と従表の間でのみ 可能です。
この問合せは、従表の orders と cust_calls を主表である customer 表に個別に結合
しますが、2 つの従表同士は結合しません。 (INTO TEMP 節は、結果を選択して一時
表に入れます。)
SELECT c.customer_num, lname, o.order_num,
order_date, call_dtime
FROM customer c, OUTER orders o, OUTER cust_calls x
WHERE c.customer_num = o.customer_num
AND c.customer_num = x.customer_num
INTO temp service;
sel_order.sql
以下の例は、ORDER BY 節と WHERE 節を使用して、照会を行います。この SELECT
文では、比較 ’bicycle%’ (LIKE 条件の場合で、MATCHES 条件の場合は ’bicycle*’)
は、 bicycle という文字の後に、ゼロ個以上の任意の文字列が続いたものを指定してい
ます。 PRC という manu_code を除外する別の比較条件を追加することで、さらに検
索の範囲を狭めています。
SELECT * FROM stock
WHERE description LIKE ’bicycle%’
AND manu_code NOT LIKE ’PRC’
ORDER BY description, manu_code;
sel_sub.sql
以下の例は、問合せに副問合せを使用しています。このセルフ結合は、相関副問合せを
使用して、 注文されたうちの最高価格の 10 品目を抽出して、リストします。
SELECT order_num, total_price
FROM items a
WHERE 10 >
(SELECT COUNT (*)
FROM items b
WHERE b.total_price < a.total_price)
ORDER BY total_price;
sel_union.sql
以下の例は、UNION 節を使用して、2 つの表のデータの問合せを行います。複合問合
せは、stock 表と items 表の中の stock_num 列と manu_code 列の合併を行いま
す。この文は、単価が $25.00 未満の品目か、または 3 個より多く注文された品目を選
択して、それらの品目の stock_num と manu_code をリストします。
付録 B. デモンストレーション SQL
143
SELECT DISTINCT stock_num, manu_code
FROM stock
WHERE unit_price < 25.00
UNION
SELECT stock_num, manu_code
FROM items
WHERE quantity > 3;
upd_table.sql
以下の例は、c_table.sql コマンド ファイルが作成した sports 表を更新します。
UPDATE sports
SET phone = ’808-555-1212’
WHERE mfg_code = ’PARKR’;
ディメンショナル データベース モデルのための SQL ファイル
sales_demo データベースは、データウェアハウス アプリケーション用の次元スキー
マを示したものです。このデータベース モデルは、stores_demo スキーマとデータを
変更します。この節で説明するファイルが正常に実行されるには、以下の 2 つの前提条
件があります。
v 以下のコマンドを使用して、stores_demo データベースを作成する必要がある。
dbaccessdemo -log
v createdw.sql ファイルと loaddw.sql ファイルは、loaddw.sql が使用する、拡張子
.unl を持つファイルと同じディレクトリ内になければならない。
createdw.sql
このファイルは、ログ機能付きの新規の sales_demo データベースを作成した後、そ
のデータベース内に表を作成します。このファイルには、以下の文が含まれます。
create database sales_demo with log;
create table product (
product_code integer,
product_name char(31),
vendor_code char(3),
vendor_name char(15),
product_line_code smallint,
product_line_name char(15));
create table customer (
customer_code integer,
customer_name char(31),
company_name char(20));
create table sales (
144
IBM Informix: DB-Access ユーザーズ ガイド
customer_code integer,
district_code smallint,
time_code integer,
product_code integer,
units_sold smallint,
revenue money (8,2),
cost money (8,2),
net_profit money(8,2));
create table time
(
time_code int,
order_date date,
month_code smallint,
month_name char(10),
quarter_code smallint,
quarter_name char(10),
year integer
);
create table geography (
district_code serial,
district_name char(15),
state_code char(2),
state_name char(18),
region smallint);
loaddw.sql
このファイルには、以下の 2 つのソースからデータをロードするために必要なコマンド
が含まれています。
v デモンストレーション ディレクトリ内の拡張子 .unl を持つファイル
v stores_demo データベースからの選択されたデータ
loaddw.sql 内の以下の SQL 文が、これらのアクションを行います。
connect to "stores_demo ";
load from "add_orders.unl"
insert into stores_demo :orders;
load from ’add_items.unl’
insert into stores_demo :items;
connect to "sales_demo";
load from ’costs.unl’
insert into cost;
load from ’time.unl’
insert into time;
insert into geography(district_name, state_code, state_name)
select distinct c.city, s.code, s.sname
from stores_demo :customer c, stores_demo :state s
where c.state = s.code;
update geography
-- converts state_code values to region values
set region = 1
where state_code = "CA";
update geography
付録 B. デモンストレーション SQL
145
set region = 2
where state_code <> "CA";
insert into customer (customer_code, customer_name, company_name)
select c.customer_num, trim(c.fname) || " " || c.lname, c.company
from stores_demo :customer c;
insert into product (product_code, product_name, vendor_code,
vendor_name, product_line_code, product_line_name)
select a.catalog_num,
trim(m.manu_name) || " "|| s.description,
m.manu_code, m.manu_name, s.stock_num, s.description
from stores_demo :catalog a, stores_demo :manufact m,
stores_demo :stock s
where a.stock_num = s.stock_num and
a.manu_code = s.manu_code and
s.manu_code = m.manu_code;
insert into sales (customer_code, district_code,
time_code, product_code,
units_sold, revenue, cost, net_profit)
select c.customer_num, g.district_code, t.time_code, p.product_code,
SUM(i.quantity), SUM(i.total_price),
SUM(i.quantity * x.cost),
SUM(i.total_price) - SUM(i.quantity * x.cost)
from stores_demo :customer c, geography g, time t,
product p,
stores_demo :items i, stores_demo :orders o, cost x
where c.customer_num = o.customer_num and
o.order_num = i.order_num and
p.product_line_code = i.stock_num and
p.vendor_code = i.manu_code and
t.order_date = o.order_date and
p.product_code = x.product_code and
c.city = g.district_name
GROUP BY 1,2,3,4;
connect to "stores_demo ";
load from ’add_orders.unl’
insert into stores_demo :orders;
load from ’add_items.unl’
insert into stores_demo :items;
connect to "sales_demo";
load from ’costs.unl’
insert into cost;
load from ’time.unl’
insert into time;
insert into geography(district_name, state_code, state_name)
select distinct c.city, s.code, s.sname
from stores_demo :customer c, stores_demo :state s
where c.state = s.code;
update geography
-- converts state_code values to region values
set region = 1
where state_code = "CA";
update geography
set region = 2
where state_code <> "CA";
insert into customer (customer_code, customer_name, company_name)
select c.customer_num, trim(c.fname) || " " || c.lname, c.company
from stores_demo :customer c;
146
IBM Informix: DB-Access ユーザーズ ガイド
insert into product (product_code, product_name, vendor_code,
vendor_name, product_line_code, product_line_name)
select a.catalog_num,
trim(m.manu_name) || " " || s.description,
m.manu_code, m.manu_name, s.stock_num, s.description
from stores_demo :catalog a, stores_demo :manufact m,
stores_demo :stock s
where a.stock_num = s.stock_num and
a.manu_code = s.manu_code and
s.manu_code = m.manu_code;
insert into sales (customer_code, district_code,
time_code, product_code,
units_sold, revenue, cost, net_profit)
select c.customer_num, g.district_code, t.time_code, p.product_code,
SUM(i.quantity), SUM(i.total_price),
SUM(i.quantity * x.cost),
SUM(i.total_price) - SUM(i.quantity * x.cost)
from stores_demo :customer c, geography g, time t, product p,
stores_demo :items i, stores_demo :orders o, cost x
where c.customer_num = o.customer_num and
o.order_num = i.order_num and
p.product_line_code = i.stock_num and
p.vendor_code = i.manu_code and
t.order_date = o.order_date and
p.product_code = x.product_code and
c.city = g.district_name
GROUP BY 1,2,3,4;
オブジェクト リレーショナル データベース モデルのためのユーザ定義ルーチン
superstores_demo データベースは、stores_demo データベースに代わるものではあ
りません。両方のデータベースが使用可能です。 superstores_demo データベース ス
キーマは、stores_demo との後方互換性はありません。多くの場合、stores_demo 用
に開発されたテスト問合せは、表が異なるため、superstores_demo の表では使用でき
ません。
特に superstores_demo に関連付けられた SQL コマンド ファイルはありません。た
だし、 35 ページの『第 3 章 「Query-language」オプション』で説明する画面で使用で
きる、ユーザ定義ルーチンがあります。
superstores_demo データベースには、以下の新機能の例が含まれています。
v コレクション型: セット (SET) 型、リスト (LIST) 型
v 名前付き行型: location_t、loc_us_t、loc_non_us_t
v 名前なし行型
v 型および表の継承
v 組込みデータ型: ブール (BOOLEAN) 型、8 バイト シリアル (SERIAL8) 型、8 バイ
ト整数 (INT8) 型
v ディスティンクト (DISTINCT) 型: PERCENT
付録 B. デモンストレーション SQL
147
v スマート ラージ オブジェクト: バイナリ ラージ オブジェクト (BLOB) 型および文
字ラージ オブジェクト (CLOB) 型
superstores_demo データベースには、以下の表継承階層構造をサポートする、行
(ROW) 型と表があります。
v customer/retail_customer
v customer/whlsale_customer
v location/location_us
v location/location_non_us
superstores_demo 表と継承階層構造についての完全な説明は、「IBM Informix: SQL
ガイド: 参照」を参照してください。ユーザ定義ルーチンについて詳しくは、
「IBM Informix: ユーザ定義ルーチンおよびデータ タイプ 開発者ガイド」を参照してく
ださい。
148
IBM Informix: DB-Access ユーザーズ ガイド
特記事項
本書に記載の製品、サービス、または機能が日本においては提供されていない場合があ
ります。日本で利用可能な製品、サービス、および機能については、日本 IBM の営業
担当員にお尋ねください。本書で IBM 製品、プログラム、またはサービスに言及して
いても、その IBM 製品、プログラム、またはサービスのみが使用可能であることを意
味するものではありません。これらに代えて、IBM の知的所有権を侵害することのな
い、機能的に同等の製品、プログラム、またはサービスを使用することができます。た
だし、IBM 以外の製品とプログラムの操作またはサービスの評価および検証は、お客様
の責任で行っていただきます。
IBM は、本書に記載されている内容に関して特許権 (特許出願中のものを含む) を保有
している場合があります。本書の提供は、お客様にこれらの特許権について実施権を許
諾することを意味するものではありません。
使用許諾については、下記の宛先に書面にてご照会ください。
〒106-0032
東京都港区六本木 3-2-31
IBM World Trade Asia Corporation
Licensing
以下の保証は、国または地域の法律に沿わない場合は、適用されません。IBM およびそ
の直接または間接の子会社は、本書を特定物として現存するままの状態で提供し、商品
性の保証、特定目的適合性の保証および法律上の瑕疵担保責任を含むすべての明示もし
くは黙示の保証責任を負わないものとします。国または地域によっては、法律の強行規
定により、保証責任の制限が禁じられる場合、強行規定の制限を受けるものとします。
この情報には、技術的に不適切な記述や誤植を含む場合があります。本書は定期的に見
直され、必要な変更は本書の次版に組み込まれます。 IBM は予告なしに、随時、この
文書に記載されている製品またはプログラムに対して、改良または変更を行うことがあ
ります。
本書において IBM 以外の Web サイトに言及している場合がありますが、便宜のため
記載しただけであり、決してそれらの Web サイトを推奨するものではありません。そ
れらの Web サイトにある資料は、この IBM 製品の資料の一部ではありません。それ
らの Web サイトは、お客様の責任でご使用ください。
IBM は、お客様が提供するいかなる情報も、お客様に対してなんら義務も負うことのな
い、自ら適切と信ずる方法で、使用もしくは配布することができるものとします。
© Copyright IBM Corp. 1996, 2002
149
本プログラムのライセンス保持者で、(i) 独自に作成したプログラムとその他のプログラ
ム(本プログラムを含む)との間での情報交換、および (ii) 交換された情報の相互利用
を可能にすることを目的として、本プログラムに関する情報を必要とする方は、下記に
連絡してください。
IBM Corporation
J46A/G4
555 Bailey Avenue
San Jose, CA 95141-1003
U.S.A.
本プログラムに関する上記の情報は、適切な使用条件の下で使用することができます
が、有償の場合もあります。
本書で説明されているライセンス・プログラムまたはその他のライセンス資料は、IBM
所定のプログラム契約の契約条項、IBM プログラムのご使用条件、またはそれと同等の
条項に基づいて、 IBM より提供されます。
この文書に含まれるいかなるパフォーマンス・データも、管理環境下で決定されたもの
です。そのため、他の操作環境で得られた結果は、異なる可能性があります。一部の測
定が、開発レベルのシステムで行われた可能性がありますが、その測定値が、一般に利
用可能なシステムのものと同じである保証はありません。さらに、一部の測定値が、推
定値である可能性があります。実際の結果は、異なる可能性があります。お客様は、お
客様の特定の環境に適したデータを確かめる必要があります。
IBM 以外の製品に関する情報は、その製品の供給者、出版物、もしくはその他の公に利
用可能なソースから入手したものです。IBM は、それらの製品のテストは行っておりま
せん。したがって、他社製品に関する実行性、互換性、またはその他の要求については
確証できません。 IBM 以外の製品の性能に関する質問は、それらの製品の供給者にお
願いします。
150
IBM Informix: DB-Access ユーザーズ ガイド
商標
AIX; DB2; DB2 Universal Database; Distributed Relational Database Architecture;
NUMA-Q; OS/2、OS/390、および OS/400; IBM Informix®; C-ISAM®; Foundation.2000™;
IBM Informix ® 4GL; IBM Informix®DataBlade®Module; Client SDK™; Cloudscape™;
Cloudsync™; IBM Informix®Connect; IBM Informix®Driver for JDBC; Dynamic Connect™;
IBM Informix®Dynamic Scalable Architecture™(DSA); IBM Informix®Dynamic Server™;
IBM Informix®Enterprise Gateway Manager (Enterprise Gateway Manager); IBM
Informix®Extended Parallel Server™; i.Financial Services™; J/Foundation™; MaxConnect™;
Object Translator™; Red Brick™; IBM Informix® SE; IBM Informix® SQL;
InformiXML™; RedBack®; SystemBuilder™; U2™; UniData®; UniVerse®; wintegrate® は、
IBM Corporation の商標または登録商標です。
Java およびすべての Java 関連の商標およびロゴは、Sun Microsystems, Inc. の米国およ
びその他の国における商標または登録商標です。
Windows、Windows NT および Excel は、Microsoft Corporation の米国およびその他の
国における商標です。
UNIX は、The Open Group がライセンスしている米国およびその他の国における登録
商標です。
本書で言及しているその他の会社名、製品名およびサービス名はそれぞれ各社の商標ま
たは登録商標です。
特記事項
151
152
IBM Informix: DB-Access ユーザーズ ガイド
索引
日本語, 数字, 英字, 特殊文字の
順に配列されています。なお, 濁
音と半濁音は清音と同等に扱わ
れています。
110
各国語サポート
SQL エディタを使用した訂正
製品 xi
ヒント xi
プラットフォーム xi
アクセス方法、インデックス 113
依存関係、ソフトウェアの ix
104
インデックス
アクセス方法 113
重複値を許容する 82
フィル ファクタの指定 83
ユーザ定義 113
「ADD INDEX」画面を使用して
作成 82
DataBlade からの 113
エクステント サイズ 96
エディタ
新規の SQL 文を作成する 39
制約事項 40
テキスト 28
リテラル値の入力 105
SQL 文の編集 46
エラー
コマンド ファイルの実行の 133
コマンド行オプションの使用 16
制約を修正する 104
データベースをオープンした後の
サーバへの接続 127
フィル ファクタの入力 83
© Copyright IBM Corp. 1996, 2002
可変長文字 (VARCHAR) 型
メニュー上での選択方法 26
「CONNECTION」メニューの
124
「DATABASE」メニューの
60
「SQL」メニューの 38
「TABLE」メニューの 75
参照: dbaccess コマンド オプシ
ョン
オンライン ヘルプ xv
オンライン マニュアル
110
可変長文字 (CHARACTER
VARYING) 型 110
端末セット アップ 11
オプション
ヘルプの表示方法 28
xi
xi
コマンド ファイルのリスト順序
50
情報の表示 66
各国語文字 (NCHAR) 型
エラー メッセージ
アイコン
機能 xi
一意性制約
データ妥当性検査
定義 103
各国語可変長文字 (NVARCHAR) 型
CONNECT アクセス権がない
126
46
SQL 文での編集 47
SQL 文の実行 45
[ア行]
警告
重要
エラー (続き)
xv
[カ行]
カーソル
端末画面上の移動 24
テキスト入力画面上の表示される
場所 27
SQL エディタを使用する場合の
位置 39
外部キー制約
カスケード削除を可能にする
101
定義 100
の情報 115
拡張データ型 79
確認画面
コマンド ファイルの削除 55
データベースの削除 70
データベースの作成 64
カスケード削除を可能にする 101
画面
終了方法 27
テキスト入力用
110
26
テキストの入力方法
ヘッダの構造 27
27
例 27
ADD FILL FACTOR
PERCENTAGE 83
BLOB領域選択 81
CHOOSE 50
CREATE DATABASE 確認 64
「DATABASE」メニューの 59,
70
DISCONNECT 確認 127
INFO FOR TABLE 107
SELECT DATABASE 126
SELECT DATABASE
SERVER 126
SELECT DBSPACE 87
SELECT PROCEDURE 68
SELECT ROUTINE 68
「SQL」メニューの 37, 55
「TABLE」メニューの 74
環境変数
デフォルト エディタの設定 36
DBACCNOIGN 5
DBANSIWARN 18, 41
DBEDIT 5
DBFLTMASK 5
DBPATH 50, 61
DELIMIDENT 5, 6
153
環境変数 (続き)
構文ダイヤグラム (続き)
キー
バーを持ってはならない
24
削除キー 25
スペース キー
25
コマンド ファイル
エディタを使用した修正
割込み 25
Ctrl キー 24
CTRL-A 39
Enter キー 25
Esc (エスケープ) 39
Esc (エスケープ) キー
25
SQL エディタで使用される
キーワード
構文ダイヤグラムの xiv
構文記法 xi
構文ダイヤグラム
131
xi
マニュアル ix
起動、DB-Access の 10
機能、この製品の新しい ix
機能アイコン xi
行 ID の追加または削除 98
行 (ROW) 型、定義された 112
業界標準への準拠 xvii
行ロック 97
金額 (MONEY) 型 110
組込みデータ型 110
警告アイコン xi
権限、UNIX 8
現行文の定義 36
コード セット、ISO 8859-1 ix
コード例の規則 xiv
コード例の表記 xiv
広域言語サポート (GLS) ix
情報の表示 66
後退キー 24
構文ダイヤグラム
キーワード xiv
154
39
12
標準入力を介した対話型入力 19
-ansi フラグの使用 41
コマンド行オプション、メイン メニ
ューの表示 12
コマンド行の規則
読み方 xiii
例のダイヤグラム xiii
コメント アイコン x
コレクション (COLLECTION) 型
112
セット (SET) 型 112
マルチセット (MULTISET) 型
112
リスト (LIST) 型 112
サイズ
初期エクステントの設定 96
次エクステントの設定 96
サイト名、列に保存する 105
作業ディレクトリ 7
IBM Informix: DB-Access ユーザーズ ガイド
Korn 20
時間隔 (INTERVAL) 型
110
式ストラテジ
「ATTACH TABLES」メニュー
93
DEFINE ATTACH POSITION メ
ニュー 94
面 93
システム日付、列に保存する
コマンド行
[サ行]
20
20
「NEW TABLE」画面 95
SELECT ATTACHING TABLE 画
メニューから 53
ユーザの決定の確認 55
コマンド ファイルの保存 51
構文、DB-Access を起動する
追加機能 19
標準入力からの読取り 19
C
EDIT EXPRESSION メニュー 90
「EXPRESSION」メニュー 89
「FRAGMENT」メニュー 88
イル 133
保存 51
命名規則 52
コマンド ファイルの削除
39
規則
オンライン ヘルプ
28
コマンド行からの実行 17
選択 (CHOOSE 画面) 50
提供された SQL コマンド ファ
CTRL-D 19, 39
CTRL-R 39
CTRL-W 28, 131
CTRL-X
Bourne
12
コマンド オプション
参照: dbaccess コマンド オプシ
ョン
24
25
削除を可能にする、カスケードでの
101
シェル
コマンド ウィンドウはスクロール
後退キー
矢印
削除キー
規則 xi
変数 xiv
LC_COLLATE 50
ONCONFIG 61
システム要件
ソフトウェア
データベース
実数 (FLOAT) 型
105
ix
ix
110
重要パラグラフのアイコン
主キー制約
xi
定義 99
の情報 116
準拠
業界標準への xvii
小桁実数 (SMALLFLOAT) 型 110
小桁整数 (SMALLINT) 型 110
情報
現行セッションの情報の表示
129
現行データベースの情報を表示す
る 64
表のための表示 52, 107
情報スキーマ 18
シリアル (SERIAL) 型 110
新機能、この製品の ix
スキーマ エディタ
表からの列の削除 85
表の作成 78
列の定義 78
「EXIT」メニュー 84
スキーマを使用した表の作成
84
データ型 (続き)
データベース (続き)
ストアド プロシジャ
SELECT PROCEDURE 画面 68
金額 (MONEY) 型
組込み 110
スペース キー
コレクション (COLLECTION) 型
25
整数 (INTEGER) 型
製品アイコン
制約
110
時間隔 (INTERVAL) 型
実数 (FLOAT) 型 110
110
小桁実数 (SMALLFLOAT) 型
103
DISCONNECT メニュー
現行
112, 147
xi
一意性制約の定義
アクティブ トランザクション
で 128
110
削除 69
削除するユーザーの決定の確認
70
外部キー制約の情報 115
外部キー制約の定義 100
カスケード削除を可能にする
110
小桁整数 (SMALLINT) 型 110
シリアル (SERIAL) 型 110
作成 62
選択 29
の情報を表示する
101
参照制約の情報 115
主キー制約の情報 116
スキーマ エディタを使用した列
の定義 79
整数 (INTEGER) 型 110
命名 63
メニューからの選択 61
ANSI 標準準拠の作成 64
セット (SET) 型
「cLose」オプション
主キー制約の定義
チェック制約の定義
定義 98
デフォルト値の定義
99
104
表示 115
CREATE TABLE を使用して追加
する 98
制約事項、SQL エディタの
セッション情報 129
40
セット (SET) 型 112
選択、メニューからのデータベース
の 61
ソフトウェア依存関係
112, 147
ディスティンクト (DISTINCT) 型
147
テキスト (TEXT) 型 110, 111
102
ix
[タ行]
対話型入力、標準入力を介した 19
端末
キーの使用法 24
標準入力としての 19
端末の使用方法 24
データ、画面上での次ページの表示
44
データ型
各国語可変長文字 (NVARCHAR)
型 110
各国語文字 (NCHAR) 型 110
可変長文字 (CHARACTER
VARYING) 型 110
可変長文字 (VARCHAR) 型 110
記述された 72, 120
行 (ROW) 型 112, 147
64
70
DB 領域に保管する 63
データベース サーバ
暗黙的な接続解除 127
日時 (DATETIME) 型 110
バイト (BYTE) 型 110, 111
バイナリ ラージ オブジェクト
からの接続解除 127
名前、列に保存する 105
への接続 124
(BLOB) 型 110, 111, 148
日付 (DATE) 型 110
メニューからの選択 124
「SELECT DATABASE
ブール (BOOLEAN) 型
不透明 111
110, 147
マルチセット (MULTISET) 型
112
文字 (CHAR) 型 110
文字ラージ オブジェクト (CLOB)
型 110, 111, 148
リスト (LIST) 型 112, 147
列の追加 79
10 進数 (DECIMAL) 型 110
8 バイト シリアル (SERIAL8Z)
型 110
8 バイト シリアル (SERIAL8) 型
147
8 バイト整数 (INT8) 型 110
「ADD TYPE」メニュー オプシ
ョン 79
データ妥当性検査
一意性制約 104
デフォルト列値 106
データベース
暗黙的なクローズ 127
クローズ 70
127
59
SERVER」画面 124
データベース サーバの選択
124
データベース環境からの接続解除
127
データベース環境への接続 123
データベース管理者 10
データベース情報
ルーチン 67
DB 領域 66
データベースのクローズ
アクティブ トランザクションで
128
メニューから 70
Disconnect オプションを使用した
128
データベースの削除、メニューから
の 69
データベースの作成
命名の制限 62
メニューから 62
ディスク領域、Extent Size 画面を使
用した管理 97
索引
155
ディスティンクト (DISTINCT) 型
画面での入力方法
27
システム エディタを使用した編
集 36
テキスト エディタ
使用法
デフォルト (続き)
トランザクションのコミットまたは
CREATE DATABASE 確認画面の
64
147
テキスト
ーを終了する
「TRANSACTION」メニューを使用
した 128
面の 55
28
デフォルト
オペレーティング システムのエ
ディタ 37
101
「DROP TABLE」画面の 120
「LOCK MODE」メニューの 98
「LOG」メニューの 64
デフォルト ロケール ix
デモンストレーション データベース
6
インストール
7
再初期化 7
必要な作業ディレクトリ
モデル 7
データベース データ用の DB 領
域 63
長さ、各国語文字 (NCHAR) 型
sales_demo 8
SQL コマンド ファイル 133
stores_demo セット アップ 8
81
長さ、金額 (MONEY) 型の 81
stores_demo、SQL コマンド ファ
イル 134
長さ、文字 (CHAR) 型 81
長さと小数点以下桁数、数値型の
superstores_demo 7
superstores_demo セット アップ
81
番号、シリアル (SERIAL) 型の
81
表の格納域 87
プリンタへの出力の送信 48
列、データ妥当性検査 106
列値 105
列値のデータ妥当性検査 106
列値の定義 104
列値の表示 52
列型、NULL 105
列デフォルトの追加 105
列のための値の定義 104
「ADD DEFAULT TYPE」メニュ
ー 105
ADD DEFAULT VALUE メニュ
ー 106
「ADD DUPLICATES」画面の
82
「ADD NAME」画面の 78
9
問合せ
既存ファイルに結果を追加する
49
新規ファイルへの結果の保管 48
パイプへの結果の送信 49
ファイルへの結果の送信 48
プリンタへの結果の送信 48
問合せ結果の印刷 48
ドキュメント ノート xv
ドキュメント ノート、プログラム項
目 xvi
トラブルシューティング
Choose コマンドでユーザのコマ
ンド ファイルがリストされない
51
dbaccess ウィンドウはスクロール
バーを持ってはならない 12
トラブルシューティング、端末タイ
プ不明 11
IBM Informix: DB-Access ユーザーズ ガイド
[ナ行]
日時 (DATETIME) 型
入力
対話型 19
標準からの読取り
年の値、2 桁と 4 桁
初期エクステント サイズ 97
チェック制約の削除 102
データベース サーバの選択 126
156
71, 128
トランザクションのロール バック、
64
DISCONNECT 確認画面 128
DROP COMMAND FILE 確認画
内部エディタ 40
SQL エディタ 40
テキスト (TEXT) 型 110, 111
外部キーの削除
「CREATE DATABASE」メニュ
ロール バック 71
トランザクションのロール バック
7
110
19
5
[ハ行]
バイト (BYTE) 型 110, 111
バイナリ ラージ オブジェクト
(BLOB) 型
パイプ
110, 111
からの読取り 20
問合せ結果の出力先をプログラム
に変更する 47
問合せ結果を送信する 49
パスワード、DB-Access 対話モード
でのプロンプト 21
バックグラウンド モードでのデータ
ベース環境への接続 21
バッファ付きログ機能 64
バッファなしログ
指定方法 64
日付 (DATE) 型 110
表
アクセス権情報 114
アクセス権の表示 114
インデックス情報 113
エクステント サイズの設定 85
外部キー制約情報 115
格納域 86
格納する DB 領域 86
画面での情報の表示 52, 107
継承 148
削除 119
作成する前に修正する 84
表 (続き)
参照情報の表示
主キー制約情報
ファイル (続き)
スキーマからの列の除去
スキーマの作成
問合せ結果を保管するために作成
する 48
114
116
標準入力からの読取り
85
SQL 文の保存
84
20
50
制約情報 115
トリガ情報 117, 118
フィル ファクタの指定 83
不透明 (opaque) 型 111
トリガの表示
太文字 x
118
列情報 110
列制約の表示 115
列内の NULL 値を許容する
DB-Access のラウンド ロビン
91
フラグメント
列のインデックス作成 (スキーマ
DB-Access STORAGE メニューの
エディター) 82
列の削除 (スキーマ エディ
タ) 85
オプション 87
DB-Access の 「FRAGMENT」メ
ニュー 87
列の修正 (スキーマ エディ
タ) 84
ロック モードの設定 85
DB-Access の ROUND_ROBIN メ
ニュー 89
DB-Access の「ALTER
SELECT ATTACHING TABLE 画
面 (式フラグメント化) 93
FRAGMENT」メニュー 91
DB-Access の「EXPRESSION」メ
標準入力からの読取り 19
表の削除
メニューから 119
ユーザの決定の確認 120
表の作成
スキーマ エディタを使用した
75
フラグメント (「EXPRESSION」
メニュー) 89
フラグメント (ROUND_ROBIN
メニュー) 88
ヒント アイコン xi
ブール (BOOLEAN) 型 110
ファイル
現行の SQL 文の保存 51
コマンド ファイルの表示 134
コマンド ファイル用の .sql 拡張
子 51, 133
コマンドの選択 50
問合せ結果を追加する 49
問合せ結果を保管する 47
ニュー 89
プラットフォーム アイコン
xvi
マニュアルのタイプ xv
ドキュメント ノート
リリース ノート
フラグメンテーション ストラテジ
DB-Access のストラテジ メニュ
ーのない 95
「triGgers」オプションを使用した
情報の表示 117
マシン ノート
マシン ノート
のエクステント サイズ 96
のロック モード 97
別のサーバからの表示 108
83
[マ行]
xi
プログラム グループ
ドキュメント ノート xvi
リリース ノート xvi
分散データベース、別のサーバの表
情報を要求する 108
ヘルプ xv
オンライン ヘルプ画面の終了
28
オンライン情報画面のページ送り
28
構文ダイヤグラムの読み方 131
CTRL-W を使用して呼び出す
131
SQL 文のオンライン構文情報
131
ヘルプ メニュー 28
変数、構文ダイヤグラム内の xiv
xv
xvi
xvi
マルチセット (MULTISET) 型
メイン メニュー
コマンド行からの表示
112
12
「Connection」オプションの選択
124
「Query-language」オプション
37
Session オプションの選択 129
「Table」オプションの選択 74
メッセージ ファイル、エラー メッ
セージ用の xvi
メニュー
一意制約 103
オプションの選択方法
カスケード削除 101
終了方法 26
情報
制約
26
108
98, 115
トランザクション 71, 128
の図 3
ヘルプ 28
例 26
ADD CHECK VALUE 102
ADD DEFAULT TYPE 105
ADD DEFAULT VALUE 106
ADD NULLS 83
ADD TYPE 79
CHECK CONSTRAINTS 102
CONNECTION 124
DEFAULTS 105
LOCK MODE 97
REFERENCE 115
TABLE OPTIONS 86
メニュー オプション
「CONNECTION」メニュー 124
「DATABASE」メニュー 60
「SQL」メニュー 38
「TABLE」メニュー 75
索引
157
列 (続き)
モード
上書き 39
挿入 39
スキーマ エディタを使用して
NULL 値を許容する 83
ロック
スキーマからの除去
97
文字 (CHAR) 型
105
データ型
説明 72, 120
ADD DEFAULT VALUE メニュー
106
「ADD NULLS」メニュー
選択 79
追加 79
定義 78
デフォルト リテラル値
[ヤ行]
矢印キー 24
ユーザ ID、列に保存する
105
ユーザ、対象の viii
ユーザ定義データ型 79
ユーザ名
バックグラウンド モードで接続
する場合の指定 21
を使用した CONNECT 文 21
「ADD TYPE」メニュー
105
デフォルト値のデータ妥当性検査
106
デフォルト型、NULL 105
「Columns」オプションを使用し
た情報の表示 110
「Info」オプションを使用したデ
ータ型と NULL の表示 110
[ラ行]
NULL デフォルト値 105
列のインデックス作成、「ADD
INDEX」画面 82
ラージ オブジェクト
シンプル 111
列名 78
ロギング
スマート 111
定義された 111
ラウンド ロビン ストラテジ
「FRAGMENT」メニュー 88
ROUND_ROBIN メニュー 89
リスト (LIST) 型 112
リテラル、デフォルト値の割当て
105
リリース ノート xvi
リリース ノート、プログラム項目
xvi
ルーチン
格納された 58
作成と実行 55
デモンストレーション コマンド
ファイル 56
sysprocedures システム カタログ
表 56
列
インデックス作成 82
修正 84
スキーマ エディタを使用した表
からの削除 85
158
バッファ付きまたはバッファなし
の指定 64
を指定したデータベースの作成
64
ロケール ix
デフォルト ix
en_us.8859-1 ix
ロック モード、ページまたは行を指
定する 97
[ワ行]
割込みキー
25
[数字]
10 進数 (DECIMAL) 型 110
8 バイト シリアル (SERIAL8) 型
110
8 バイト整数 (INT8) 型 110
IBM Informix: DB-Access ユーザーズ ガイド
「ADD CHECK VALUE」メニュー
102
「ADD DEFAULT TYPE」メニュー
85
制約 98
110
文字ラージ オブジェクト (CLOB) 型
110, 111
A
83
79
「ALTER FRAGMENT」メニュー
91
ストラテジのない 95
ラウンド ロビン 91
「ALTER ROWID」メニュー
「ALTER TABLE」画面 76
ANSI データベース
98
72
ANSI 標準準拠
レベル xvii
SQL 文のチェック
18
ANSI 標準準拠データベース
および SQLSTATE 値 18
指定 63
トランザクション ログ機能 64
ANSI、SQL 文の標準準拠のチェック
18
B
BLOB 領域
「Columns」オプションで表示さ
れるデータ型 111
Blobspace
列を追加する 81
TEXT または BYTE データの指
定 81
BLOB領域選択画面 81
C
「CHECK CONSTRAINTS」メニュー
102
chmod コマンド 10
CHOOSE 画面 50
「Choose」オプション (「SQL」メニ
ュー) 50
「DATABASE」メニュー (続き)
CLOSE DATABASE 文 72
「DROP DATABASE」画面
「Drop」オプション 69
COMMIT 72
COMMIT 文 72
CONNECT 文
「Info」オプション
21
「CONNECTION」メニュー
124
オプション
123,
14
PASSWORD プロンプト画面
125
USER NAME プロンプト画面
124
「CONSTRAINTS」メニュー
のオプション 115
表示される 98, 115
「Primary」オプション
116
「Reference」オプション 115
「CREATE DATABASE」メニュー
63
「CREATE TABLE」メニュー 77
終了 84
終了するスキーマの作成 84
「Modify」オプション、列を変更
する 84
-ta
16
-tc
16
61
Select オプション
-td 16
-ti 16
-v または -V
既存のストラテジからの削除
現行の修正 89
データベースを保管する 63
89
のための式の定義 90
表の格納のために指定する 86
を使用したラウンド ロビン フラ
グメント化
dbaccess コマンド オプション
connect_menu_option 14
database 14
database_menu_option
filename 14
table_menu_option
-ansi 13
-c 13
-cc 14
-cd 15
-d 13
-dc 15
-dd 15
-di 15
-dl 15
-ds 15
-e 13
-m 13
-q 13
-qc 15
-qd 15
-qi 15
-qm 16
-qn 16
-qs 16
-qu 16
14
-X 14
DBACCNOIGN 環境変数
DBEDIT 環境変数 5
5
DBFLTMASK 環境変数 5
DBPATH 環境変数 126
DB-Access
影響を与える環境変数
89
「ALTER FRAGMENT」メニュー
91
「SELECT DBSPACE」画面 63
Ctrl キー
CTRL-A
CTRL-D
CTRL-R
CTRL-W
CTRL-X
「DATABASE INFO」メニュー
オプション 65
終了方法 65
「dBspaces」オプション 66
「Routines」オプション 67
「DATABASE」メニュー
オプション 15
コマンド行からのオプションの選
択 14, 15
使用可能なオプション 60
「cLose」オプション 70
CREATE DATABASE 画面 62
61
DB 領域
query_menu_option
table 14
D
64
-s 13
-t 14
「SELECT DATABASE」画面
「Create」オプション、「TABLE」メ
ニューの 75
24
39
19, 39
39
28, 131
39
dbaccess コマンド オプション (続き)
69
14
14
14
4
とは 1
メニュー階層 3
USER NAME プロンプト画面
124
DB-Access の起動
コマンド ファイルの実行
17
コマンド行オプション 10
メイン メニューの表示 12
ANSI 標準準拠のチェック 18
「DATABASE」メニュー オプシ
ョン 14, 15
「SQL」メニュー オプション
15
「TABLE」メニュー オプション
16
DB-Access ユーティリティ 6
「DEFAULTS」メニュー 105
DELIMIDENT 環境変数 5, 6
「DROP DATABASE」画面
データベースを削除する 2 つの
方法 69
「DATABASE」メニューから選択
69
「Drop」オプション
コマンド ファイルの削除の確認
55
「SQL」メニュー 54
索引
159
「Info」オプション (続き)
E
「ENABLE CASCADING
DELETES」メニュー
Enter キー 25
101
en_us.8859-1 ロケール
ix
Esc キー
「Printer」オプション 48
「SQL」メニュー 47
「triGgers」オプション
「To-pipe」オプション
117, 118
終了 53, 109
使用可能なオプション
「Exit」オプション
実行画面 45
制約情報の表示
ー 64
「CREATE TABLE」メニュー
84
「Columns」オプション
64
87
G
SQL を使用する 109
「TABLE」メニューのオプション
107
「triGgers」オプション 117
ISO 8859-1 コード セット ix
97
「Modify」オプション (「SQL」メニ
ュー) 46
I
INFO FOR TABLE 画面 107
INFORMIXDIR/bin ディレクトリ 7
「Info」オプション
「Columns」オプション 110
「cOnstraints」オプション 115
「DATABASE」メニュー 64
「Exit」オプション 109
「Indexes」オプション 113
「Privileges」オプション 114
「References」オプション 114
「SQL」メニュー 52
160
N
NULL 値
列のデフォルト 105
ADD NULL メニューで指定
O
「Output」オプション
「Append-file」オプション 49
「New-file」オプション 48
IBM Informix: DB-Access ユーザーズ ガイド
「Query-language」オプション
使用法 38
メイン メニューの 37
「QUERY-LANGUAGE」メニュー オ
15
R
L
「LOCK MODE」メニュー
「LOG」メニュー 63
125
Q
プション
M
10
PASSWORD プロンプト画面
PATH
110
F
finderr ユーティリティ xvi
「FRAGMENT」メニューへの到達
「Page」オプション (「LOCK
MODE」メニュー) 97
デモンストレーション データベ
ースと 7
DB-Access の要件 5
「cOnstraints」オプション 115
「Privileges」オプション 114
「References」オプション 114
97,
「SQL」メニュー 38
「TABLE」メニュー 75, 77
115
フラグメント化のオプション
118
列情報を表示する 109
「DATABASE INFO」メニュー
65
「DATABASE」メニュー 60
「LOCK MODE」メニュー
P
109
表アクセス権情報の表示 114
表インデックス情報の表示 113
表のリスト 109
「CREATE DATABASE」メニュ
GRANT 文
49
「INFO」メニュー
25, 39
98
「LOG」メニュー
RUN 画面 118
「Output」オプション (続き)
「Table」オプション 109
「TABLE」メニュー 75
83
「REFERENCE」メニュー
オプション 115
参照側の情報を示す 116
被参照側の情報を示す 116
ROLLBACK 72
Routines
テキストの表示 67
リストの表示 67
SELECT ROUTINE 画面 68
「Row」オプション (「LOCK
MODE」メニュー) 97
「Run」オプション
結果を再表示するための
「Restart」オプション 45
データを表示するための「Next」
オプション 45
「Exit」オプション 45, 118
「SQL」メニュー 41
「SQL」メニュー (続き)
SQL 文
S
エラーがある場合の動作
sales_demo
6
「Save」オプション
保存されたファイルの命名規則
52
「SQL」メニュー
51
「SELECT DATABASE SERVER」画
面 124, 125
「SELECT DATABASE」画面 126
データベースを選択する 2 つの
方法 62
データベースを選択せずに終了す
る 127
「DATABASE」メニューから選択
61
「SELECT DBSPACE」画面 87
SELECT ROUTINE 画面 67
SPL ルーチン 55
SQL
オンライン ヘルプ画面の構文の
読み方 131
文の入力 39
メニューからの使用 44
INFO 文に相当する 52
SQL エディタ
使用法 39
新規の SQL 文 39
編集キー 39
編集に関する制約事項 40
列のデフォルト データ型の割当
て 105
CTRL-A 編集キー 39
CTRL-D 編集キー 39
CTRL-R 編集キー 39
CTRL-X 編集キー 39
Esc キー 39
SQL 文の編集 46
SQL コード xiv
SQL コマンド ファイル
カレント ディレクトリに置く必
要のある 7
Choose コマンドを使用したリス
ト作成の要件 51
sales_demo 144
「SAVE」画面 51
stdin、対話型入力用の 19
45
オンライン ヘルプの構文規則
131
stores_demo
既存ファイルへの問合せ結果の追
superstores_demo
加 49
現行、定義された
36
コマンド ファイルの選択
コマンド ファイルへの保存 51
削除 53
システム エディタを使用した編
「TABLE OPTIONS」メニュー
「TABLE」メニュー
48
プリンタへの出力の送信
編集 36
48
SAVE 画面の選択
択 16
使用可能なオプション 75
使用のガイドライン 74
47
ファイルへの出力の送信
50
51
SQL エディタを使用した新規文
の入力 39
SQL 文の削除
メニューから 53
ユーザの決定の確認
86
オプション 16
コマンド行からのオプションの選
集 36
修正 46
パイプへの問合せ結果の送信
標準入力からの実行 20
標準入力からの読取り 19
6, 7
T
50
端末での対話型入力 19
問合せ結果の出力先の変更
6, 7
55
SQL 文の実行
エラーがない場合 41
エラーの場合の 45
sqlhosts 内の接続情報を表示 126
SQLSTATE 値が表示される 18
「SQL」メニュー
コマンド行からのオプションの選
択 15
使用可能なオプション 38
新規の SQL 文を実行する 41
CHOOSE 画面 50
「Choose」オプション 50
「Drop」オプション 54
「Info」オプション 52
「Modify」オプション 46
OUTPUT メニュー 48
「Output」オプション 47
「Run」オプション 41
「Save」オプション 51
「CREATE TABLE」画面の選択
75
「Drop」オプションの選択
「Info」オプション 107
119
「Table_options」オプション
(「CREATE TABLE」メニュ
ー) 77
「TRANSACTION」メニュー
71,
128
「TRANSACTION」メニューを使用
したトランザクションのコミット
71, 128
U
「UNIQUE CONSTRAINTS」メニュ
ー 103
UNIX
大文字と小文字の区別とファイル
名 52
権限 8
システム エディタ 37
chmod コマンド 10
UNIX オペレーティング システム
デフォルト ロケール ix
USER NAME プロンプト画面 124
USER 節、CONNECT 文の
DB-Access 対話モードでの 21
索引
161
W
Windows NT
デフォルト ロケール
ix
X
X/Open 準拠レベル
xvii
[特殊文字]
$INFORMIXDIR/bin
- 14
5
%INFORMIXDIR%¥bin
162
5
IBM Informix: DB-Access ユーザーズ ガイド
򔻐򗗠򙳰
Printed in Japan
GB88-8627-00
Fly UP