...

KeySQL R4.2

by user

on
Category: Documents
18

views

Report

Comments

Transcript

KeySQL R4.2
KeySQL R4.2
ユーザーズ・ガイド
R4.2 for MS Windows
2002年6月
J06415-01
OracleとOracleのロゴはOracle Corporationの登録商標です。記載されているその他の製品名および社名はその製品お
よび会社を識別する目的にのみ使用されており、それぞれ該当する所有者の商標です。
Copyright © 2002, Oracle Corporation
All Right Reserved
はじめに
KeySQLは、ネットワークに接続されたOracleリレーショナル・データベース・シ
ステムに、アプリケーションからアクセスをして、データの検索、更新、追加、
削除を行うデータベース・アクセス・ソフトウェアです。
まずはじめに、マニュアルの対象読者、マニュアルの構成等について説明しま
す。
対象とする読者
このマニュアルは、ネットワークで接続されているOracleデータベースのデータ
を、マイクロソフト社の「Microsoft Excel」のような表計算ソフトを使って加工
しようとする方を対象としています。
マニュアルの構成
このマニュアルは、次の構成になっています。
第1章
概要
第2章
動作環境
第3章
画面説明
第4章
KeySQLの起動
第5章
ログイン操作
第6章
検索操作
第7章
更新・追加・削除操作
第8章
ダイレクトSQL入力機能
第9章
ストアド・プロシージャ実行機能
第10章
KeySQLマクロ機能
第11章
KeySQLマクロ関数
第12章
DDE REQUEST
第13章
「Excel 97/2000/2002」マクロ
第14章
メッセージ一覧
関連マニュアル
マイクロソフト社の「Microsoft Excel」ついての内容に関しては、マイクロソフ
ト社のマニュアルを参照してください。
また、必要に応じて、オラクル社の製品マニュアルを参照してください。
表記法
ウィンドウ上のボタンは [ ] および図記号で示されます。操作の際は、画面上
のボタンをマウスでクリックしてください。
キーボード入力は { } で示されます。操作の際は、キーボードから入力を行って
ください。
目 次
はじめに ............................................... i
第1章 概要
1.1
製品概要 ....................................... 1-2
1.2
特徴 ........................................... 1-2
第2章 動作環境
2.1
オペレーティングシステム ....................... 2-2
2.2
ソフトウェア ................................... 2-2
第3章 画面説明
3.1
起動画面 ....................................... 3-2
3.2
アプリケーション登録画面 ....................... 3-3
3.3
ログイン画面 ................................... 3-4
3.4
テーブルグループ登録画面 ....................... 3-5
3.5
KeySQLメインウィンドウ ......................... 3-6
3.5.1 KeySQLメインウィンドウ(1) ................... 3-7
3.5.2 KeySQLメインウィンドウ(2) .................. 3-20
3.5.3 KeySQLメインウィンドウ(3) .................. 3-26
3.5.4 KeySQLメインウィンドウ(4) .................. 3-28
3.6
更新・追加・削除画面 ........ 3-39
3.7
ダイレクトSQLウィンドウ ....................... 3-40
3.8
SQL実行結果ウィンドウ ......................... 3-42
3.9
ストアド・プロシージャ画面 .................... 3-44
3.10 マクロファイル保存画面 ........................ 3-47
3.11 各種フォント設定 .............................. 3-48
3.12 テーブル情報の表示 ............................ 3-48
第4章 「KeySQL」の起動
4.1 「KeySQL」の起動方法 ............................. 4-2
KeySQL for MS Windows ユーザーズ・ガイド i
第5章 ログイン操作
5.1
アプリケーションを登録する ..................... 5-2
5.2
デ−タベ−スへ接続を行う ....................... 5-4
第6章 検索操作
6.1
操作概要 ....................................... 6-2
6.1.1 「Excel」に検索結果を出力する場合 ........... 6-2
6.1.2 CSV/HTMLファイルで検索結果を出力する場合 .. 6-3
6.2
表名・項目名の選択方法 ......................... 6-5
6.2.1 メイン画面操作方法 ........................... 6-6
6.2.2 検索項目選択 ............................... 6-8
6.3
検索条件の設定 ................................. 6-9
6.3.1 検索条件設定画面 ............................. 6-9
6.3.2 LIKE、NOT LIKE演算子設定 .................... 6-11
6.3.3 NULL、NOT NULL演算子設定 .................... 6-12
6.3.4 BETWEEN、NOT BETWEEN演算子設定 .............. 6-13
6.3.5 検索条件論理式作成 .......................... 6-14
6.3.6 副問い合わせ設定 ............................ 6-15
6.4
表結合 ........................................ 6-16
6.4.1 表結合設定画面 .............................. 6-17
6.5
グループ関数設定 .............................. 6-18
6.5.1 グループ関数を用いたデータの抽出 ........... 6-19
6.5.2 グループ関数設定画面(1) ..................... 6-20
6.5.3 グループ関数設定画面(2) ..................... 6-21
6.5.4 グループ関数を用いた検索画面 ............... 6-22
6.5.5 グループ設定画面(1)と方法 ................... 6-23
6.5.6 グループ条件設定画面(2) ..................... 6-24
6.5.8 グループ条件論理設定画面 .................... 6-25
6.6
ソート指定 .................................... 6-26
6.7
ユニオン設定 .................................. 6-27
6.8
条件設定一覧画面 .............................. 6-29
6.9
関数ウイザード ................................ 6-30
6.9.1 関数ウイザード画面 .......................... 6-30
6.9.2 式の設定 .................................... 6-31
6.10 ローカル別名の設定 ............................ 6-32
6.11 表結合候補の設定 .............................. 6-33
ii
KeySQL for MS Windows ユーザーズ・ガイド
第7章 更新・追加・削除操作
7.1
操作概要 ....................................... 7-2
7.2
追加データの入力 ............................... 7-2
7.2.1 レコードの追加 ............................... 7-3
7.2.2 アプリケーション画面でのデータ/レコード追加 . 7-4
7.3
追加実行 ....................................... 7-5
7.3.1 レコード追加画面 ............................. 7-5
7.3.2 レコード追加了解画面 ......................... 7-6
7.4
削除実行 ....................................... 7-7
7.4.1 データ・レコード削除 ......................... 7-7
7.4.2 レコード削除画面 ............................. 7-8
7.5
更新実行 ....................................... 7-9
7.5.1 レコード更新 ................................. 7-9
7.5.2 レコード更新画面 ............................ 7-10
7.6
無検索更新 .................................... 7-11
7.7
更新:追加:削除時のレコードのロック、アンロック 7-14
7.7.1 レコードロック機能 .......................... 7-14
7.7.2 ロックモードの指定 .......................... 7-14
7.7.3 レコードロック .............................. 7-15
7.7.4 ロックの解除 ................................ 7-15
7.7.5 ロックを使用するときの注意 ................. 7-15
第8章
ダイレクトSQL入力機能
8.1
ダイレクトSQL入力 .............................. 8-2
8.1.1 ダイレクトSQLウィンドウ ..................... 8-2
8.1.2 実行結果画面 ................................ 8-4
8.1.3 実行とイミディエート実行 .................... 8-5
8.2
変数と置換文字列 ............................... 8-6
8.2.1 変数と置換文字列の違い ...................... 8-6
8.2.2 変数と置換文字列の使い分け .................. 8-6
8.2.3 SQL文中の変数指定 ........................... 8-7
8.2.4 SQL文中の置換文字列指定 ..................... 8-7
8.2.5 変数:置換文字列の設定 ....................... 8-7
8.2.6 変数:置換文字列の設定値の保存と読み込み ..... 8-7
8.2.7 変数設定 .................................... 8-8
8.2.8 置換文字列設定 ............................. 8-11
8.2.9 実行SQL文の履歴画面 ......................... 8-14
KeySQL for MS Windows ユーザーズ・ガイド iii
8.2.10 マクロジェネレート画面 ..................... 8-15
第9章
9.1
9.2
9.3
9.4
ストアド・プロシージャ実行機能
ストアド・プロシージャ、ファンクション画面 .....
引数の設定画面 .................................
定義参照画面 ...................................
ストアド・プロシージャ設定画面 .................
9-2
9-4
9-6
9-6
第10章 「KeySQL」マクロ機能
10.1
マクロファイル作成機能 ....................... 10-2
10.1.1 メインウィンドウ・マクロ作成 .............. 10-4
10.1.2 「マクロファイルに保存」画面 .............. 10-5
10.2
条件問い合わせ機能の設定 ..................... 10-8
10.3
マクロの実行と読み込み ....................... 10-9
10.3.1 メインウインドウでのマクロ実行 ............ 10-9
10.3.2 メインウインドウでのマクロ読み込み ....... 10-10
第11章 「KeySQL」マクロ関数
11.1 「KeySQL」マクロ関数 .......................... 11-2
SetupD ......................................... 11-4
Connect ........................................ 11-5
Execfile ....................................... 11-6
Select ......................................... 11-7
Condition ...................................... 11-8
From .......................................... 11-10
Execute ....................................... 11-11
Fetch ......................................... 11-12
Fetchend ...................................... 11-12
Update ........................................ 11-13
Insert ........................................ 11-15
Delete ........................................ 11-16
KeyExecSql .................................... 11-17
Bind .......................................... 11-21
DefMacro ...................................... 11-22
Load .......................................... 11-23
Save .......................................... 11-24
iv
KeySQL for MS Windows ユーザーズ・ガイド
Logout ........................................
Exit ..........................................
Put ...........................................
Sheet .........................................
Clear .........................................
KeySQLRequest .................................
11-25
11-26
11-27
11-28
11-29
11-30
第12章
DDE REQUEST
12.1
DDE REQUEST サポート項目 ..................... 12-2
12.2
DDE REQUEST 応答項目一覧 ..................... 12-3
第13章 「Excel 97/2000/2002」マクロ
13.1
通常モード ................................... 13-2
13.1.1 主要マクロ関数 ............................ 13-2
13.1.2 マクロファイル機能 ........................ 13-3
13.1.3 エグゼキュート機能 ........................ 13-6
13.2
ダイレクトコール ............................. 13-9
13.2.1 マクロファイル機能 ........................ 13-9
13.2.2 エグゼキュート機能 ....................... 13-10
第14章 メッセージ一覧
14.1
エラー・メッセージ ........................... 14-2
ログイン ....................................... 14-2
検索条件 ....................................... 14-2
更 新 ......................................... 14-2
削 除 ......................................... 14-3
マクロ作成/実行 ................................ 14-3
ダイレクトSQLウィンドウ ........................ 14-4
実行結果ウィンドウ ............................. 14-4
「アプリケーション」DDE ........................ 14-5
14.2
マクロ・エラー・メッセージ一覧 ............... 14-6
14.2.1 ダイレクトSQLの DDEコマンド実行時 ......... 14-6
KeySQL for MS Windows ユーザーズ・ガイド v
1
第1章
概要
データベース・アクセスツール「K e y S Q L 」の概要と特徴につ
いて説明します。
KeySQL for MS Windows ユーザーズ・ガイド
1-1
1.1
製品概要
「KeySQL」は、ネットワークに接続されたデータベース・システムに、 マイクロソフト社の表
計算ソフトウェア「Excel 95/97/2000/2002」からアクセスして、データの検索、更新、追加、
削除を行うデータベース・アクセス・ソフトウェアです。今回のバージョンはWindows95/98ま
たはWindowsNT4.0/2000/XP Professinal上にて、32ビットモードで動作が行えます。
[非定型業務]
「KeySQL」メニュー画面をマウスでクリックするだけの簡単な操作で実現可能です。SQL
の知識を全く必要としません。
[定型業務]
「KeySQL」メニュー画面で指定した条件をマクロ・ジェネレート機能を使って、定型業
務をマクロ・ファイルとして保存できます。自動生成したマクロ・ファイルを呼び出すこ
とで、一度設定した条件を、再設定することなく何度も繰り返し実行できます。
[サポ−ト関数]
豊富な比較演算子やグル−プ関数をサポートしていますので、色々なデータを色々な形
で加工して、自由自在に検索することができます。
[ダイレクトSQL入力機能]
「KeySQL」のダイレクトSQL入力画面からデータベースにSQL文を直接入力し、実行する
ことができます。
[ストアド・プロシージャ、ファンクション実行]
サーバーに設定されたストアド・プロシージャ、ファンクションを、「KeySQL」のダイ
レクトSQL画面から、マウス操作によって参照、実行を簡単に行うことができます。
[各種アプリケーションにおけるデ−タ加工]
各種アプリケーションの表計算機能、データベース機能とデータベースを 「KeySQL」
と連携させることで、画期的なデータベース・システムが構築できます。
[各種アプリケーション・マクロからのデータベース・アクセス]
「KeySQL」は、各種アプリケーション・マクロからも実行可能です。自由な形で、より
ユーザー・フレンドリなマンマシン・インタフェースを提供します。
1-2
KeySQL for MS Windows ユーザーズ・ガイド
1.2
特徴
「KeySQL」はデータベースへの検索、更新、追加、削除をサポートします。
「KeySQL」はMicrosoft WindowsのDDE(Dynamic Data Exchange)機能をサポートしています。
「Excel 95/97/2000/2002」のワークシートのデータとデータベース・サーバーのデータは、
「KeySQL」のDDE機能とWindowsのクリップボード機能を介してやり取りされます。また、Excel
ではダイレクトコール機能を利用した高速アクセス対応も可能になっています。
「KeySQL」はマクロ・ジェネレータを装備しています。マクロ・ファイルを自動生成しますの
で、ユーザーは複雑なマクロをコーディングする業務から解放され、導入したその日から、マ
ウス・ボタンを一つクリックするだけでデータベース・システムにアクセスすることができ、
定型業務を行うことができます。
KeySQL for MS Windows ユーザーズ・ガイド
1-3
1
2
第2章
動作環境
この章では、「KeySQL」の動作環境について説明します。
・
オペレーティングシステム環境
・
ソフトウェアの動作環境
KeySQL for MS Windows ユーザーズ・ガイド
2-1
2.1
オペレーティングシステム
「KeySQL for MS Windows リリース4.2」は、Microsoft Windows9x 及び
Microsoft Windows NT4.0以上、2000、XP Professonal が稼働している機器で利
用できます。
2.2
ソフトウェア
「KeySQL for MS Windows
アが必要です。
リリース4.2」を動作させるには、以下のソフトウェ
・Oracleデータベース(リモートあるいはローカル)
・Net8 R8.0.4以上
OracleデータベースおよびNet8の設定については、各製品のマニュアルを御参照
下さい。
2-2
KeySQL for MS Windows ユーザーズ・ガイド
3
第3章
画面説明
「KeySQL」は、より簡単な操作を提供する為に、Microsoft Windows
の機能を使用して、多彩なマンマシン・インタフェ−スを実現して
います。
この章では、「KeySQL」で使用する画面の各部名称ならびに機能に
ついて説明を行います。
・
・
起動画面
アプリケーション登録画面
・
・
ログイン画面
テーブルグループ登録画面
・
・
KeySQLメインウィンドウ画面
更新、追加、削除画面
・
・
ダイレクトSQLウィンドウ画面
SQL実行結果ウィンドウ画面
・
・
ストアド・プロシージャ画面
マクロファイル保存画面
・
・
各種フォント設定画面
テーブル情報の表示画面
KeySQL for
MS Windows ユーザーズ・ガイド
3-1
3.1 起動画面
Windowsのデスクトップから「KeySQL」のアイコンをクリックすると、次の起動
画面が表示されます。
図3-1 起動画面
[メニューバー説明 ]
ファイル
:ログイン/アプリケーションの登録をします。
表示
:ステータスバー/ツールバーの表示およびフォントの設定をし
ます。
ヘルプ
:バージョン情報を表示します。
[ツールバー説明]
:新規作成
:閉じる :開く
:全て閉じる :テーブルグループ登録
:アプリケーションの登録
3-2
KeySQL for MS Windows ユーザーズ・ガイド
:マクロ保存 :マクロ実行 :テールグループ選択
3.2 アプリケーション登録画面
起動画面のメニューバーから「アプリケーションの登録(E)」を選択すると、次
の画面が表示されます。
3
図3-2 アプリケーション登録画面
[各種機能] エントリボックス: 貼り付け先アプリケーションを登録します。
アプリケーション: 使用するアプリケーションを選択します。 コマンドライン : アプリケーションの立上げコマンドを登録します。 実行ディレクトリ: アプリケーションの実行ディレクトリを指定します。
自動起動を行う : アプリケーションが検索時に立ち上がってない場合、自動
的に立上げます。
貼り付け時に
: 検索したデータをシートに貼り付ける際、アプリケーショ
アクティブ化
ンをアクティブにします。
[各種ボタン] 「登録」
: アプリケーションをエントリボックスに登録します。 「削除」
: エントリボックスのアプリケーションを削除します。
「参照」 : ロードモジュール指定の為の参照を行います。
「終了」
: 「アプリケーションの登録」画面を終了します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-3
3.3 ログイン画面
起動画面のメニューバー「ファイル(F)」からから「ログイン(L)」を選択する
と、次の画面が表示されます。
図3-3 ログイン画面
[各種機能]
ユーザー名 :データベースのユーザー名を指定します。
パスワード :上記で指定したユーザー名のパスワードを指定します。 ホスト
:接続するデータベース・サーバーを指定します。
テーブルグループ
:グループ化されたテーブルグループ名を指定します。 テーブル情報をダウンロード
:テーブル情報を常に取得します。
ログイン後にテーブルグループを編集
:ログイン後テーブルグループを常に編集します。
[各種ボタン]
「グループ参照」
:ユーザー名/ホストの組み合わせで登録されているテーブ
ルグループをリストに取得します。
(「テーブル情報をダウンロード」をチェックしない場合に
設定が可能です。) 「実行」
:ログイン処理を実行します。 「取消」
:ログイン処理を取り消し画面を終了します。
3-4
KeySQL for MS Windows ユーザーズ・ガイド
3.4
テーブルグループ登録画面
テーブルグループを設定する画面です。
3
テーブルグループリスト テーブルリスト 図3-4 テーブルグループ登録画面 [各種機能] テーブルグループリスト :テーブルグループ登録済みのリストを表示します
テーブルリスト
:テーブルの一覧を表示します。 表示順 デフォルト
:ダウンロード順にリスト表示します。 テーブル
:テーブル名順にリスト表示します。
オーナー+テーブル
:オーナー名順のテーブル名順にリスト表示します
「登録」
:テーブルグループを登録します。 「削除」
:指定されたテーブルグループを削除します。 「終了」
:テーブルグループ登録画面を終了します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-5
3.5 KeySQLメインウィンドウ
「KeySQL」は、ログイン操作後、自動的にメインウィンドウに切り替わります。
検索、更新、追加、削除の操作はこの画面で行います。
図3-5 KeySQLメイン画面
KeySQLの画面は、大きく分けて3つの画面で構成されます。 (1)メインウィンドウ
(2)ダイレクトSQLウィンドウ(フローティング可能)
(3)実行結果ウィンドウ(フローティング可能)
この3つの画面は、それぞれウィンドウとして表示されます。さらに、メイン
ウィンドウは各処理単位での表示や保存が可能になっていますので、複数のメイ
ンウィンドウを同時に表示することができます。よって、次のことが可能です。
(1)各画面を同時に見ながらの作業(メイン&結果など) (2)メインモード処理における1画面中での複数のタスク編集
メインウィンドウはそのまま、マクロ・ファイルとして保存、実行、再読込みを
行うことができます。マクロ・ファイルとしては、KeySQLの「.MAC」ファイルお
よびアプリケーション・ボックスに設定されたアプリケーション用のマクロ・
ファイルが生成されます。
3-6
KeySQL for MS Windows ユーザーズ・ガイド
3.5.1 KeySQLメインウィンドウ(1)
この項では、「KeySQL」メイン・ウィンドウを4つの部分に分け、各部名称なら
びに機能を説明します。
3
図3-6 KeySQLメイン画面の分割
まず、メニューバーで選択できる機能の説明をします。 KeySQL for
MS Windows ユーザーズ・ガイド
3-7
図3-7 ファイルメニュー
[メニューバー] ファイル(F) :ログアウトし、起動画面に戻ります。
・ログアウト(L)
・新規作成(N)
:メイン・ウィンドウを新規に作成します。
:保存したマクロ・ファイルを読み込みます。
・開く(O)
・マクロファイルに保存(S) :メイン・ウィンドウをマクロファイルに保存します。
・閉じる(C)
:作業中のメイン・ウィンドウを終了します。 ・全部閉じる(Z)
:作業中のメイン・ウィンドウをすべて終了し、ローカル
別名の設定、テーブルグループ゚登録、テーブルグループ
選択が実行可能となります。
・マクロの実行(M)
:マクロ・ファイルを実行させます。 ・ローカル別名の設定(A)
:表及び項目を別名で表示する設定を行います。
・テーブルグループ゚登録(G)
:テーブルグループの登録画面を表示します。 ・テーブルグループ選択(R)
:テーブルグループを選択します。 ・表結合候補の設定(J)
:表結合候補の設定を行います。
・終了(X)
:KeySQLを終了します。
3-8
KeySQL for MS Windows ユーザーズ・ガイド
3
図3-8 表示メニュー
表示(V) ・ステータスバー(S) :ステータスバーにステータスを表示します。 :ツールバーを表示させます。
・ツールバーー(T)
・実行結果(R)
:実行結果ウィンドウを表示させます。
・ダイレクト入力(D) :ダイレクトSQL入力ウィンドウを表示させます。
・SQL表示
:現在設定されている内容をSQL文で表示します。
図3-9 ウインドウメニュー
ウインドウ(W) :各種ウインドウを重ねて表示させます。
・重ねて表示(C)
・並べて表示(T)
:各種ウインドウを並べて表示させます。
・アイコンの整列(A) :アイコン化されたウインドウ群を整列させ
ます。
ヘルプ(H)
:KeySQLのバージョン情報を表示します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-9
アプリケーションボックス トピックス名 行・列 検索ボタン 更新ボタン 作業状態/日付設定
図3-10 メインウィンドウ(1)
[メイン画面内] アプリケーション
:貼り付け先のアプリケーションを指定します。 トピックス名
:出力先シートを指定します。 行・列指定
:出力先頭位置を指定します。 [各種ボタン]
:検索を開始します。 :追加・更新・削除画面を表示します (検索・更新版のみ
表示)
:検索・更新時における作業状態の設定を行います。
作業状態設定ボタンを押した場合に出力される画面の説明を行います。
図3-11 作業状態設定画面(1)
3-10
KeySQL for MS Windows ユーザーズ・ガイド
[各種機能]
一般
実行ダイアログを表示する
:実行/中断ダイアログの表示をします。
DDEコマンド実行時はエラー表示をしない
:KeySQLをアプリケーション側から実行した場合にKeySQL のエ
ラーは表示しません。
エラーメッセージを貼り付ける
:DBからのエラーメッセージをワークシートに貼り付けます。オ
プションをオンにした場合に貼り付け先シート名とセルを指定し
ます。 図3-12 作業状態設定画面(2)
検索・更新
検索オプション
・件数を確認 :検索時にロードするデータ件数の確認をダイアログで表示しま
す。
・テーブル名を貼付け
:検索データ貼り付け先にテーブル名を貼り付けます。 ・項目名を貼り付け
:検索データ貼り付け先に項目名を貼り付けます。 ・選択行をロックする
:検索時に、選択行をロックします。
・表結合チェックを行う
:複数の表から検索する場合に表結合がなされているかチェック
を行います。
更新オプション
・件数を確認 :更新時、件数ダイアログを表示します。
・正常終了時にコミットする
:更新時、コミットダイアログを表示します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-11
3
図3-13 作業状態設定画面(3)
日付型データを検索するときの書式を指定します。日付データはここで指定され
た書式に変換されてからシートに貼り付けられます。書式指定を特に行わないと
きは、データベースのデフォルトの書式で出力されます。
[各種機能]
日付書式
:KeySQLで使用する日付の書式を選択します。
更新・挿入データの日付リテラルを変換しない
:更新処理における日付リテラルの変換をしません。
条件文中の日付リテラルを変換しない
:検索条件式にある日付リテラルを変換しません。
[書式の指定]
セットアップの「日付書式の設定」をクリックするとダイアログボックスが表示
されます。コンボボックスのなかから書式を選択してください。また新たな書式
を設定することもできます。
yyyy
yy
ggg
gg
g
e
mmm
mm
dd
hh
mm
ss
3-12
KeySQL for MS Windows ユーザーズ・ガイド
−年(4桁)
−年(2桁,ゼロ詰め)
−年号(平成,昭和...)
−年号(平,昭...)
−年号(H,S...)
−年号に続く年
−月名の省略形(JAN...DEC)
−月(2桁,ゼロ詰め)
−日(2桁,ゼロ詰め)
−時(2桁,ゼロ詰め)
−分(2桁,ゼロ詰め)
−秒(2桁,ゼロ詰め)
「KeySQL」は、データを指定された書式でExcel等のシートに貼り付けますが、
Excelは、そのデータを日付データと判断すると自身の書式に変換して表示する
事があります。
例.「KeySQL」書式 yyyy−mm−dd
「Excel」書式
G/標準
1994-08-01
1994/8/1
このような場合は、「KeySQL」書式にセルの書式をあわせて設定してください。
特に更新、追加を行うときは、注意してください。「KeySQL」は、シートデータ
をデータベースの書式に変換して更新、追加を行います。「KeySQL」書式とシー
ト書式があわないと、この変換ができなくなります。
「KeySQL」は検索時と更新時の日付け書式が別でも構いません。更新直前に
「KeySQL」書式をシート書式に設定することも可能です。
[各種ボタン] 「OK」 :設定したオプションを有効にして画面を閉じます
「キャンセル」
:設定したオプションを破棄して画面を閉じます。
KeySQL for
MS Windows ユーザーズ・ガイド
3-13
3
ローカル別名の設定画面の説明を行います。
図3-14 ローカル別名の設定画面
[各種機能]
表別名
表実名
オーナー
列別名
列実名
設定を有効にする
:設定された表の別名が表示されます。
:データベース上の実名が表示されます。
:オーナー名が表示されます。
:設定された列の別名が表示されます。
:データベース上の実名が表示されます。
:オンにて表一覧、項目一覧に設定内容を反映させます。
[各種ボタン]
「表追加」
「表削除」
「列編集」
「列削除」
「OK」 「キャンセル」
3-14
KeySQL for MS Windows ユーザーズ・ガイド
:ローカル別名の追加を行います。表別名の追加画面が表
示されます。
:登録されているローカル別名を削除します。
:列に対する別名を追加します。
:登録されている列別名を削除します。
:設定したオプションを有効にして画面を閉じます
:設定したオプションを破棄して画面を閉じます。
3
図3-15 ローカル別名ー表別名の追加設定画面
[各種機能]
表別名
表実名
オーナー
:設定する別名を入力します。
:データベース上の実名が表示されます。
:オーナー名が表示されます。
[各種ボタン]
「OK」 :設定したオプションを有効にして画面を閉じます
「キャンセル」
:設定したオプションを破棄して画面を閉じます。
図3-16 ローカル別名ー列別名の設定ー表の選択画面
[各種機能]
表別名
表実名
オーナー
:設定されている表の別名が表示されます。
:データベース上の実名が表示されます。
:オーナー名が表示されます。
KeySQL for
MS Windows ユーザーズ・ガイド
3-15
図3-17 ローカル別名ー列別名の設定ー列別名の編集画面
[各種機能]
列別名
列実名
:設定する別名を入力します
:データベース上の実名が表示されます。
[各種ボタン]
「戻る」
:前の画面(表選択)に戻ります。
「OK」 :設定したオプションを有効にして画面を閉じます
「キャンセル」
:設定したオプションを破棄して画面を閉じます。
3-16
KeySQL for MS Windows ユーザーズ・ガイド
テーブルグループの選択画面の説明を行います。
3
グループ選択
表リスト
図3-18 テーブルグループ選択画面
[各種機能]
グループ選択
表リスト
:既に登録されているテーブルグループを選択します。
:選択されたグループに含まれている表一覧を表示します
[各種ボタン]
「OK」 「キャンセル」
:設定したオプションを有効にして画面を閉じます
:設定したオプションを破棄して画面を閉じます。
KeySQL for
MS Windows ユーザーズ・ガイド
3-17
表結合候補の設定画面の説明を行います。
図3-19 表結合候補の設定画面
[各種機能
追加候補
:表結合候補一覧画面に表示される結合条件。
除外候補
:表結合候補一覧画面から除外する結合条件
オーナー名表示
:表名の後ろにオーナー名を表示します。
表1
:表結合候補一覧画面の左辺に設定する表名を表示します。
列1
:表結合候補一覧画面の左辺に設定する列名を表示します。
表2
:表結合候補一覧画面の右辺に設定する表名を表示します。
列2
:表結合候補一覧画面の右辺に設定する列名を表示します。
[各種ボタン]
「追加」
「変更」
「削除」
「OK」 「キャンセル」
3-18
KeySQL for MS Windows ユーザーズ・ガイド
:追加/除外候補に設定を追加します。
:設定されている候補を変更します。
:設定されている候補を削除します
:設定したオプションを有効にして画面を閉じます
:設定したオプションを破棄して画面を閉じます。
3
左辺
右辺
図3-20 追加候補の設定画面
[各種機能]
列オーナー
表
列
:オーナー名の選択をします。
:表名を選択します。
:列名を選択します。
[各種ボタン]
「OK」 :設定したオプションを有効にして画面を閉じます
「キャンセル」
:設定したオプションを破棄して画面を閉じます。
図3-21 除外候補の設定画面
[各種機能]
列オーナー
表
列
:オーナー名の選択をします。
:表名を選択します。
:列名を選択します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-19
3.5.2 KeySQLメインウィンドウ(2)
この章では選択された項目名を表示するシートリストを説明します。
シートリスト 重複行取得指定 スクロールバー 図3-22 メインウィンドウ(2)
[メイン画面内] シートリスト : 選択した表名・項目名を表示させます。 重複行取得指定 : 検索時に重複行(全検索項目のデータが重複する行)を
許さない場合はDISTINCTを指定し、許す場合にはデフォ
ルトまたはALLを選択します。
スクロールバー : シートリストを左右にスクロールさせます。 [各種機能]
: シートリストに項目を挿入します。 : シートリストの項目を削除し、列を詰めます。 : シートリストの項目を消去します。 : シートリストの項目の表示幅を現内容に合わせます。
: シートリストの項目の表示幅を規定値に変更します。
: シートリスト上全項目の表示幅を現内容に合わせます。
: シートリスト上全項目の表示幅を規定値に変更します
:
シートリストを初期化します。
図3-23 シートリスト初期化画面
3-20
KeySQL for MS Windows ユーザーズ・ガイド
: 表/項目/選択リスト/条件のオプション設定をします。
3
図3-24 各種オプション設定画面(1)
[各種機能]
オーナー名を表示する:選択された項目のオーナー名を選択列に表示します。
テーブル名を表示する:選択された項目のテーブル名を選択列に表示します。
挿入時自動列幅合わせ:選択項目のシートリスト挿入時に、列幅を自動調節しま
す。
図3-25 各種オプション設定画面(2)
[各種機能] 表示順
:表一覧の表示順を、デフォルト(ダウンロード順)、テーブル(表
名順)、オーナー+テーブル(オーナー名+表名順)のいずれかより
選択します。なお「エイリアス付きを先頭」を指定すると、エ
イリアスを設定した表名を表示時に優先的に表示します。
表示内容
オーナー名:表リストにオーナー名を表示させます。 エイリアス:表リストにエイリアスを表示させます。
KeySQL for
MS Windows ユーザーズ・ガイド
3-21
図3-26 各種オプション設定画面(3)
[各種機能]
表示順
:項目名をデフォルト・ダウンロード順・ソート
(項目名昇順)のいずれかで表示させます。
ドラッグ&ドロップ使用
:項目をシートリストもしくは条件リストにコピーを
する場合に、ドラッグ&ドロップを使用します。
[各種ボタン]
「OK」
:設定したオプションを有効にして画面を閉じます。
「キャンセル」
:設定したオプションを破棄して画面を閉じます。
図3-27 各種オプション設定画面(4)
[各種機能]
オーナー名を表示する:
選択された項目のオーナー名を選択列に表示します。
テーブル名を表示する:
選択された項目のテーブル名を選択列に表示します。
3-22
KeySQL for MS Windows ユーザーズ・ガイド
・「検索項目詳細」の設定について
シートリスト番号をダブルクリックすると「検索項目詳細」の設定が可能です。
3
図3-28 検索項目詳細画面
[各種機能]
貼り付け表名
:貼り付け用の表名が指定できます。
貼り付け項目名
:貼り付け用に項目名が指定できます。
貼り付け位置
:使用できません。
式
:数式や列関数などが入力できます。
更新しない
:更新処理時に更新対象項目から除外できます。
更新・削除条件に含めない :更新・削除時に検索データを条件に含めません。
:グループ関数設定画面を表示します。
:関数ウィザードを表示します。
図3-29 グループ関数設定画面
KeySQL for
MS Windows ユーザーズ・ガイド
3-23
・列関数
最小
最大
合計
平均
件数
標準偏差
分散
:選択した項目の最小値(MIN)
:選択した項目の最大値(MAX)
:選択した項目の合計値(SUM)
:選択した項目の平均値(AVG)
:選択した項目のNULLでないレコード件数(COUNT)
:選択した項目の標準偏差(STDDEV)
:選択した項目の分散(VARIANCE)
・演算子
DISTINCT
ALL
:問い合わせ結果から重複行を取り除きます。
:問い合わせにおいて重複行を保持します。
*デフォルトは「ALL」になります。
図3-30 関数ウイザード
[各種機能]
関数の分類
関数
設定ボックス
:クリックするとその分類に含まれる関数が表示されます
:関数名をクリックするとその書式が表示されます。
:項目名及び書式に従って必要な情報を設定します
[各種ボタン]
「OK」 「キャンセル」
3-24
KeySQL for MS Windows ユーザーズ・ガイド
:設定したオプションを有効にして画面を閉じます
:設定したオプションを破棄して画面を閉じます。
3.5.3 KeySQLメインウィンドウ(3)
3
表リスト ゲージバー
項目リスト スクロールバー 図3-31 メイン画面(3)
[メイン画面内] 表リスト
:ユーザーが使用可能な表一覧が表示されます。 項目リスト
:表リストで選択された表の項目一覧が表示されます。
スクロールバー
:表/項目リストを上下スクロールさせます。 ゲージバー
:表/項目一覧および表一覧内の表示内容のサイズを調節
します。
[各種機能]
:表一覧内のテーブルエイリアスを削除します。 :表名に別名(エイリアス)を設定します。 :項目リストから選択された項目をシートにコピーします。
:項目リストから選択された項目を条件リストにコピーしま
す。
:FROM節の表を参照設定します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-25
図3-32 テーブルエイリアス登録画面
テーブル
エイリアス
変更
追加
キャンセル
3-26
:表一覧から選択された表名が参照されます。
:エイリアス名を入力します。
:エイリアス表を変更します。
:エイリアス表を追加します。
:エイリアス表の編集を破棄します。
KeySQL for MS Windows ユーザーズ・ガイド
3.5.4 KeySQLメインウィンドウ(4)
この項では、検索時に条件を設定する画面について説明します。
タグ 条件リスト ステイタスバー スクロールバー 図3-33 メインウィンドウ(4)
[メイン画面内] タグ
:設定の切り替えを行います。 条件リスト
:設定した条件を表示します。
スクロールバー
:条件リストを左右上下にスクロールさせます。
[各種機能] : 条件リストに行を挿入します。 : 条件リストの行を削除します。 : 条件リストの行を消去します。 : 条件リストの未入力行を削除します。 : マクロ実行時の条件問い合わせを設定します。
3-28
KeySQL for MS Windows ユーザーズ・ガイド
表結合画面の説明を行います.
3
図3-34 表結合画面
[各種機能] : 表結合を直接条件リスト内で指定します。 : 表結合候補一覧を表示させます。 : 表結合の左辺項目をシートリストに追加します。 : 表結合の左辺項目をソート指定条件に追加します。
表結合リスト ゲージバー 図3-35 表結合候補一覧表画面
[表結合候補画面内] 表結合リスト: 表結合候補を表示します。 ゲージバー : 表示幅の調整を行います。 : 表結合候補を条件リストに登録します。 : 表結合候補一覧画面を終了します。 : 表示されている表結合候補をすべて条件リストに登録します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-29
図3-36 表結合設定画面
: 表結合を条件リストに登録します。 : 表結合設定画面を終了します。 複数の表の検索実行時に、外部結合を行うことができます。
外部結合切替ボタン 図3-37 外部結合指定画面 外部結合切替ボタン:表結合条件指定時に、クリックすると切替ボタンが「両辺
に共通なデータの結合」、「両辺共通にないデータの結合」「左辺+左辺にない
右辺の結合」、「右辺+右辺にない左辺データの結合」の順に切り替わります。
: 外部結合を左辺を主に行います。
: 外部結合を右辺を主に行います。
: 両辺に共通してないデータを結合します。 3-30
KeySQL for MS Windows ユーザーズ・ガイド
検索条件設定画面の説明を行います。 3
図3-38 検索条件設定画面(1) [各種機能] : 検索条件式を直接条件リスト内で指定します。 : 複数の検索条件式に論理条件式を設定します。 : 検索条件式の左辺項目をシートリストに追加します。
: 検索条件式の左辺項目をソート指定条件に追加します。
件数
: 検索レコード件数の上限指定を行います。
演算子切り替えボタン
図3-39 検索条件式入力画面
[各種機能] : 検索条件式入力画面を終了します。 : 検索条件式を条件リストに挿入します。 : 検索条件式右辺を削除します。 : 副問い合わせ画面を表示します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-31
比較演算子 : 等号(equal) : 不等号(not equal)
: 未満(less than)
: より大きい(greater than)
: 以下(less than equal)
: 以上(greater than equal)
演算子切り替えボタンをクリックすれば、上記演算子に'ANY'または'ALL'を加え
ることができます。
条件リストボックス : ∼以上∼以下の範囲を指定します(BETWEEN)
: 指定内容に一致した存在レコード(EXISTS) : 指定内容に一致した内容が存在するレコード(IN)
:
指定した項目にデータがないレコード(NULL)
: 文字のパターン一致を調べます。
演算子ボタンをクリックすれば、上記演算子に'NOT'を加えることができます。
(EXISTSを除く)
図3-40 副問い合わせ画面
[各種機能] : 副問い合わせ画面を終了します。 : 副問い合わせを条件リストに挿入します。
3-32
KeySQL for MS Windows ユーザーズ・ガイド
グループ設定画面の説明を行います。
3
図3-41 グループ設定画面 [各種機能] : 項目をシートリストに追加します。 : 項目をソート指定条件に追加します。 グループ条件設定画面の説明を行います。 図3-42 グループ条件設定画面 [各種機能] : グループ条件式を条件リストに挿入します。 : グループ条件式の論理結合式を設定します。 : グループ条件式の左辺項目をシートリストに追加します。
: グループ条件式の左辺項目をソート指定条件を追加します。
演算子切り替えボタン
図3-43 グループ条件設定画面
KeySQL for
MS Windows ユーザーズ・ガイド
3-33
比較演算子 : 等号(equal) : 不等号(not equal)
: 未満(less than)
: より大きい(greater than)
: 以下(less than equal)
: 以上(greater than equal) 演算子切り替えボタンをクリックすれば、上記演算子に'ANY'または'ALL'を加え
ることができます。
条件リストボックス : ∼以上∼以下の範囲を指定します
: 副問い合わせに一致した存在レコード : 副問い合わせに一致した内容が存在するレコード
: 指定した項目にデータがないレコード
: 文字パターン一致を調べます。
演算子ボタンをクリックすれば、上記演算子に'NOT'を加えることができます。
(EXISTSを除く)
: 副問い合わせ画面を表示します。
: グループ関数設定画面を表示します。
: 関数ウイザードを表示します。
[各種機能]
・列関数
最小 : 選択した項目の最小値(MIN)
最大 : 選択した項目の最大値(MAX)
合計 : 選択した項目の合計値(SUM)
平均 : 選択した項目の平均値(AVG)
件数 : 選択した項目のNULLでないレコード件数(COUNT)
標準偏差 : 選択した項目の標準偏差(STDDEV)
分散 : 選択した項目の分散(VARIANCE)
3-34
KeySQL for MS Windows ユーザーズ・ガイド
・演算子
DISTINCT
: 問い合わせ結果から重複行を取り除きます。
ALL
: 問い合わせにおいて重複行を保持します。
*デフォルトは「ALL」になります。
3
演算子ボタン 論理式シート 図3-44 グループ条件論理式設定画面
[各種機能]
演算子ボタン : 論理式作成のための論理演算子および数字等のボタンで
す。
論理式シート : 論理式をエディットするシートです。
: グループ条件論理式入力画面を終了します。
: グループ条件論理式を条件リストに挿入します。 KeySQL for
MS Windows ユーザーズ・ガイド
3-35
ソート指定画面画面の説明を行います。
図3-45 ソート指定画面
[各種機能] : ソートを指定する項目の入力をします。 : 左辺項目をシートリストに追加します。 : 昇順でワークシートに取り込みます。 : 降順でワークシートに取り込みます。
3-36
KeySQL for MS Windows ユーザーズ・ガイド
ユニオン設定画面画面の説明を行います。 図3-46 ユニオン設定画面(1) [各種機能] : ユニオン設定画面を表示します。 図3-47 ユニオン設定画面(2) [各種機能] : ユニオン設定画面を終了します。 : ユニオン設定式を条件リストに挿入します。 : ユニオン設定式を削除します。 条件リストボックス
: 副問い合わせとの条件合併を行います。
: 副問い合わせとの条件合併を、重複行を含めて行います。
: 副問い合わせとの条件交差を行います。
: 副問い合わせとの条件差を行います。
: 副問い合わせ画面を表示します。 KeySQL for
MS Windows ユーザーズ・ガイド
3-37
3
条件設定一覧画面画面の説明を行います。
図3-48 条件設定一覧画面
[各種記号]
:表結合設定式の表示です。
:検索条件設定式の表示です。
:グループ゚設定項目の表示です。
:グループ条件b設定式の表示です。
:ソート順設定項目の表示です。
:ユニオン設定式の表示です。 3-38
KeySQL for MS Windows ユーザーズ・ガイド
3.6 更新・追加・削除画面 「KeySQL」を使用して、「Excel」のワークシート上で変更したデータをデータ
ベース・サーバー・システムに反映させたり、データの追加、削除を行ったりす
ることができます。
この項では、更新・追加・削除画面の各部名称ならびに機能の説明を行います。
図3-49 更新・追加・削除画面
[各種機能]
: 更新、追加、削除画面が表示されます。
[更新ウインドウ内]
開始行番号 : 処理データのワークシート上での先頭行です。
終了行番号 : 処理データのワークシート上での終了行です。
更新ボタン : 行番号で指定された範囲のデータを更新します。
追加ボタン : 行番号で指定された範囲のデータを追加します。
削除ボタン : 行番号で指定された範囲のデータを削除します。
閉じるボタン : 更新・追加・削除画面を終了します。
検索結果を使用しない : 検索しないで更新処理を行います。
KeySQL for
MS Windows ユーザーズ・ガイド
3-39
3
3.7 ダイレクトSQLウィンドウ
この項では、ダイレクトSQLウィンドウの各部名称と機能の説明を行います。メ
ニューバー「表示(V)」から「ダイレクト入力(D)」をクリックすると、次の画面
が表示されます。
図3-50 ダイレクトSQLウィンドウ
[各種機能]
設定
置換
変数
マクロ生成
変数
履歴
:ダイレクト入力の設定画面を表示します。
:置換文字列の参照・登録・変更画面を表示します。
:変数の設定画面を表示します。
:マクロジェネレート画面を表示します。
:変数の参照・登録・変更画面を表示します。
:実行したSQL文の履歴を表示します。
:ひとつ前のSQL文を呼び出します。
:ひとつ後のSQL文を呼び出します。
ストアド・プロシージャ
:ストアド・プロシージャ/ファンクションの実行を行
います。
イミディエート
:イミディエートモードでの実行をします。
実行 :入力されたSQL文を実行します。
3-40
KeySQL for MS Windows ユーザーズ・ガイド
3
図3-51 ダイレクト入力設定画面
[各種機能]
保存ファイル
:保存ファイルの指定を行います。「?」をクリックする
と履歴ファイルの保存指定ができます。
起動時に読み込む
:指定された保存ファイルを起動時に読み込みます。
終了時に保存する
:指定された保存ファイルを終了時に保存します。
履歴に保存するSQL文の数
:履歴ファイルに保存するSQL文の最大数を設定します。
[各種ボタン] 「OK」
:設定したオプションを有効にして画面を閉じます。 「キャンセル」
:設定したオプションを破棄して画面を閉じます。
KeySQL for
MS Windows ユーザーズ・ガイド
3-41
3.8 SQL実行結果ウィンドウ
この項では、SQL実行結果ウィンドウの各部名称と機能の説明を行います。 図3-52 実行結果ウィンドウ [各種機能]
。
設定
:実行結果画面の表示オプションを設定します。
コピー:選択範囲を現在の貼り付け先アプリケーション用の書式でクリップボー
ドにコピーします。
:ひとつ前の実行結果へスクロールします。
:ひとつ後の実行結果にスクロールします。
閉じる :実行結果ウィンドウを閉じます。
3-42
KeySQL for MS Windows ユーザーズ・ガイド
3
図3-53 実行結果表示オプション [各種機能]
選択リストを画面に表示する:
検索データをダイレクトSQLの「検索結果」画面に表示します。オンにす
ると「KeySQL」の検索データは、シートに貼り付くと同時に「実行結果」
にも表示されます。通常は、オフに設定すると検索処理が速くなりま
す。
マクロ置換後の入力SQLコマンド゙を表示する:
ダイレクトSQL画面で入力したSQL文に置換文字列設定があった場合、こ
のオプションをオンにすると「実行結果」画面に置換後の実行SQL文が表
示されます。オフの場合は、入力した通りの文が表示されます。
選択リストを表示する時に列を合わせる:
検索データを「実行結果」画面に表示するときに各項目の列位置をあわせ
て表示します。オフにすると、各項目の列位置は、データの文字数によっ
てずれます。通常はオフに設定して下さい。
選択リストの行番号を表示する:
検索データを「実行結果」画面に表示するときに各行の行番号を表示しま
す。
区切りの線を表示する:
検索データを「実行結果」画面に表示するときに各行間に区切り線を表示
します。
保存行数を越えても最後の実行結果は保存する:
実行結果が「メモリ上に保存する行数」の指定以上の桁数の場合、実行結
果の終わり部分の指定された保存行数だけは実行結果に表示します。
メモリ上に保存する行数:
KeySQL実行結果画面に表示保存する行数の上限値を指定します。
KeySQL for
MS Windows ユーザーズ・ガイド
3-43
3.9
ストアド・プロシージャ画面
「KeySQL」は、サーバー側で設定されたストアド・プロシージャを実行する機能
をサポ−トしています。ダイレクト入力ウィンドウの「ストアド・プロシー
ジャ」から実行可能です。
ストアド・プロシージャ、ファンクション実行画面の説明を行います。
この項では、ストアド・プロシージャ実行画面の各部名称ならびに機能の説明を
行います。
図3-54 ストアド・プロシージャ、ファンクション実行画面
閉じる : ストアド・プロシージャ実行画面を終了します。
設定
: ストアド・プロシージャ画面の設定をします。
参照 : ストアド・プロシージャ・リストを呼び出します。
取り直し: ストアド・プロシージャの定義内容を呼び出します。
引数設定: ストアド・プロシージャの引数設定画面を表示します。
挿入
: プロシージャの挿入をします。
実行 : プロシージャの実行をします。
3-44
KeySQL for MS Windows ユーザーズ・ガイド
ストアド・プロシージャ引数設定画面の説明を行います。
この項では、ストアド・プロシージャ実行画面の各部名称ならびに機能の説明を
行います。
3
図3-55 ストアド・プロシージャ引数設定画面
置換
変数
「OK」
「キャンセル」
:
:
:
:
置換文字列の参照・登録・変更画面を表示します。
変数の参照・登録・変更画面を表示します。
ストアド・プロシージャ引数を設定します。
ストアド・プロシージャ引数設定をキャンセルします。
この項では、ストアド・プロシージャ定義内容画面の各部名称ならびに機能の説
明を行います。
ストアド・プロシージャ表示画面内容を確認したいプロシージャ名を選択し、
「参照」をクリックするとストアド・プロシージャ定義内容確認画面が表示され
ます。
図3-56 ストアド・プロシージャ定義内容確認画面
KeySQL for
MS Windows ユーザーズ・ガイド
3-45
この項ではストアド・プロシージャを取得するテーブルの設定画面を説明しま
す。
図 3-57 取得テーブルの設定画面
プロシージャ名取得テーブル
:ALL_OBJECTS、USER_OBJECTSの指定を行います。
ソーステキスト取得テーブル
:ALL_SOURCE、USER_SOURCEの指定を行います。
3-46
種類の指定
:両方、PROCEDURE,FUNCTIONの指定を行います。
条件の指定
:取得するプロシージャ等の条件を指定します。
「OK」
:定義内容を確定し、画面を終了させます。
「キャンセル」
:定義内容を破棄し、画面を終了させます。
KeySQL for MS Windows ユーザーズ・ガイド
3.10 マクロファイル保存画面
KeySQLでは各メイン画面上で実行した検索処理をマクロファイルに保存すること
ができます。保存したいメイン画面がアクティブな状態の時に、メニューバーの
「ファイル(F)」→「マクロファイルに保存(S)」を選択してください。選択後、
次の画面が表示されます。
図3-58 マクロファイル保存設定画面
KeySQL for
MS Windows ユーザーズ・ガイド
3-47
3
3.11 各種フォント設定
メインウィンドウ内の各部分のフォントを設定することができます。メニュー
バー内の「表示(V)」→「フォント(F)」をクリックしてください。フォントを設
定する各部分が表示されます。
図3-59 各種フォント設定画面
3.12 テーブル情報の表示
サーバーから取得した表一覧から任意の表を選びダブルクリックすると、表の
テーブル情報が表示されます。
図 3-60 テーブル情報画面
Name :項目名が表示されます。
Type :項目の属性が表示されます。
Length :項目長が表示されます。
Prec :項目属性がNumber(数値形)の場合の整数桁数を表示します。
Scale :項目属性がNumber(整数形)の場合の少数点以下の桁数を表示します。
Null :Null値の可否を表示します。
閉じる :テーブル情報画面を終了します。
3-48
KeySQL for MS Windows ユーザーズ・ガイド
第4章
「KeySQL
」の起動
KeySQL」の起動
4
この章では、次の項目について説明を行います。
・
「KeySQL」の起動方法
KeySQL for MS Windows ユーザーズ・ガイド
4-1
4.1 「KeySQL」の起動方法
次の手順で起動して下さい。
(1)サーバーおよびネットワークシステムを立ち上げます。
(2)Oracleを立ち上げます
(3)Windowsのデスクトップウィンドウ画面からKeySQLを起動します。
4-2
KeySQL for MS Windows ユーザーズ・ガイド
図4-1 MS
Windowsデスクトップ画面
(4)「KeySQL」のオープニング画面が表示されます。
4
図4-2 オープニング画面
これで、「KeySQL」の起動は終了です。
メニューバーの「ファイル(F)」→「ログイン(L)」をクリックしてログインを開
始します。なお、初回のログイン時には「アプリケーションの登録」が必要にな
ります。詳細設定は「第5章 ログイン操作」をご覧下さい。
KeySQL for MS Windows ユーザーズ・ガイド
4-3
第5章
ログイン操作
5
この章では、次の項目について説明します。
・
デ−タベ−スへの接続
・
ログイン
KeySQL for MS Windows ユーザーズ・ガイド
5-1
5.1 アプリケーションを登録する
「KeySQL」を使用するには、検索したデータを貼り付ける為のアプリケーション
の登録が必要です。アプリケーションの登録は、オープニング画面において
「ファイル(F)」→「アプリケーションの登録(E)」で行います。
図5-1 アプリケーション登録画面
各項目の意味は次の通りになります。
[入力項目]
エントリボックス
アプリケーション
コマンドライン
実行ディレクトリ
[チェックボックス]
自動起動を行う
:貼付け先アプリケーションを登録します。
:使用するアプリケーションを選択します。
:アプリケーションの立上げコマンドを登録し
ます。
:アプリケーションの実行ディレクトリを指定し
ます。
:アプリケーションが検索時に立ち上がって
いない場合 に自動的に立ち上げます。
貼り付け時にアクティブ化
:検索したデータをシートに貼り付ける時、
アプリケーショ ンをアクティブにします。
[各種ボタン]
「登録」
5-2
:アプリケーションをエントリボックスに登録し
ます。
「削除」
:エントリボックスのアプリケーションを削除し
ます。
「参照」
「終了」
:ロードモジュール指定の為の参照を行います。
:「アプリケーションの登録」画面を終了します。
KeySQL for MS Windows ユーザーズ・ガイド
<登録方法>
(1)「エントリボックス」の「未使用」をクリックします。
(2)「アプリケーション」リストから使用するアプリケーションを選択します。使
用できるアプリケーションは次から選択します。
・エクセル 95/97/2000/2002
・HTMLファイル
・CSVファイル
(3)使用するアプリケーションの「コマンドライン」および「実行ディレクトリ」
を指定します。「参照」ボタンでロード・モジュールのディレクトリ参照がで
きます。
(4)「チェックボックス」でオプションの設定を行います。
5
「自動起動を行う」
「KeySQL」でデータを検索した後に、データを貼り付けるアプリケーショ
ンを自動起動させます。自動起動の指定がない場合には、検索をする前に
該当アプリケーション立ち上げておく必要があります。
「貼り付け時にアクティブ化」
「KeySQL」でデータを検索し貼り付ける際に、貼り付け対象となるアプリ
ケーションをアクティブにします。たとえば、貼り付け中に起こりうるア
プリケーション側のエラーについて、発生時点でその内容を確認すること
が可能です。
(5)上記設定が終了したら「登録」ボタンを押してください。エントリボックスに
アプリケーション情報が登録されます。必要のないアプリケーションを削除す
るにはエントリボックスの該当アプリケーションを選択し「削除」ボタンを押
します。
「終了」ボタンで「アプリケーションの登録」を終了します。
KeySQL for MS Windows ユーザーズ・ガイド
5-3
5.2 デ−タベ−スへ接続を行う
「KeySQL」を使用するには、まずデータベース・サーバーに接続する操作を行な
います。「KeySQL」は、デ−タベ−ス・サ−バ−へのネットワ−ク接続とデ−タ
ベ−スへの接続を、ログイン画面で行ないます。接続するにあたり、あらかじめ
次の情報を確認してください。
ユーザ名
パスワード ホスト名 テーブルグループ
ユーザ名とパスワードは、サーバーのデータベースにアクセスする際のログイン
情報です。データベース・サーバ−に登録済みであることが必要です。
ホスト名では、アクセスするデータベース名を指定します。記述方法はNet8製品
のマニュアルを参照して下さい。
「KeySQL」のオープニング画面で「ファイル(F)」→「ログイン(L)」をクリック
すると、次のログイン画面が表示されます。
5-4
KeySQL for MS Windows ユーザーズ・ガイド
図5-2 ログイン画面
各項目の意味は次のとおりです。
[入力項目]
ユーザ名
:データベースのユーザー・ログイン・アカウント名を
指定します。
パスワード
ホスト
:上記で指定したアカウントのパスワードを指定します。
:接続するデータベース・サーバーの名称(tnsname)を指
定します。
テーブルグループ
:KeySQLでグループ化したテーブルグループ名を指定し
ます。
5
[チェックボックス]
テーブル情報をダウンロード
:テーブル情報をサーバーから取得します。
ログイン後にテーブルを編集
:ログイン後テーブルグループ編集画面を表示させ、 その都度テーブルグループを編集します。
[各種ボタン]
「グループ参照」
:ユーザ名/ホストの組み合わせで登録されているテーブル
グループをリストに取得します。
「実行」
:ログイン処理を実行します。
「取消」
:ログイン処理を取り消し、画面を終了します。
KeySQL for MS Windows ユーザーズ・ガイド
5-5
<接続方法>
(1)ユーザ名/パスワード/ホストを入力します。各項目に該当する文字列を入
力して[TAB]キーを押すと入力カーソルは、順次ユーザー名、パスワード、ホ
スト名、テーブルグループとカ−ソルが移ります。マウスによって入力の項
目を切り替えても同じです。入力は、順不同で行えます。[Enter]キーは[実
行]ボタンと同じ機能ですので、注意してください。
(2)「テーブルグループ」を指定すると、サーバー上のテーブルをグループ化し、
ログイン時には、指定されたテーブルグループの情報のみを「KeySQL」に表
示させることができます。チェックボックスの「ログイン後にテーブルグ
ループを編集」を指定しておくと、ログイン後必ず、テーブルグループの編
集を実行します。「テーブル情報をダウンロード」を指定すると、ログイン
後に必ず、テーブル情報を新規にダウンロードします。また、「グループ参
照」ボタンを押すとその時点で設定されているユーザー名/ホストの組み合わ
せで設定されているテーブルグループを取得し、テーブルグループに表示さ
せ、選択することができます。
(3)上記設定終了後、「実行」ボタンクリックもしくは[Enter]キーを押してくだ
さい。ログインが開始されます。
データベースに正常アクセスできると、画面は自動的に「KeySQL」メイン画
面に移ります。アクセスできない場合はエラー・メッセージがポップアップ
画面で出力されます。エラー・メッセージについては、「第11章メッセージ
一覧」を参照下さい。
「KeySQL」は、ログイン処理を一度実行すると、次回から前回に接続されたユー
ザ名/ホスト名/テーブルグループが自動的に表示されます。パスワードのみの
入力で、サーバーへの接続が可能です。
5-6
KeySQL for MS Windows ユーザーズ・ガイド
第6章
検索操作
この章では、「Excel」のワークシートに読み込む表名・項目名の選
択や検索条件の指定方法について説明します。
・
・
検索項目設定
検索条件の設定
・
・
表結合
グループ関数設定
・
・
ソート設定
ユニオン設定
・
・
条件設定一覧
関数ウイザード
・
・
ローカル別名の設定
表結合候補の設定
KeySQL for MS Windows ユーザーズ・ガイド 6-1
6
6.1
操作概要
ログイン操作が完了すると、「KeySQL」メイン画面に自動的に切り替わります。
図6-1 KeySQLメイン画面
KeySQLには、対話形式でデータベースのデータの検索、更新、追加、削除を行う
メイン画面、SQL文をダイレクトに記述し実行するダイレクトSQL画面、実行結果
を表示する実行結果画面、の3種類の画面があります。
メイン画面には、そのユーザーの使用できる表名が、表リストに自動的に表示さ
れます。
6.1.1 「Excel」に検索結果を出力する場合の操作手順
「KeySQL」で検索を実行し「Excel」に検索結果を貼り付ける場合の操作手順を説
明します。
(1)貼り付け先ブック名、シート名、セル位置を指定します。
(2)作業状態設定画面で、作業状態を設定します。
(表名をワークシートに貼付けない等の指定)
(3)検索項目をシートリストに選択します。
i) 必要であれば式、グループ関数及び関数の設定をします。
(4)検索条件を設定します。
i) 複数表から検索する場合は表結合を決定します。
ii) 検索条件を設定します。
iii)検索条件論理式の変更があれば変更します。
iv) グループ条件、ユニオン条件を使用する場合は各々の設定画面で
指定を行います。
v) 論理式の変更があれば変更します。
(5)検索ボタンを押します。
6-2 KeySQL for MS Windows ユーザーズ・ガイド
6.1.2
CSV/HTML ファイルで検索結果を出力する場合の操作手順
次に「KeySQL」で検索を実行し、CSVおよびHTMLファイルに出力する場合の操作手
順を説明します。
(1)ログインの前に「ファイル」メニュー内の「アプリケーション登録」で、
「アプリケーション」を「CSVファイル」もしくは「HTMLファイル」と選択・
登録し、「KeySQL」を起動します。
(2)作業状態設定画面で、作業状態を設定します。
(3)検索項目をシートリストに選択します。
(4)検索条件を設定します。
//ポイント
ポイント//
ポイント
(2)∼(4)の設定はエクセルに貼り付ける場合と同様な操作が可能です。
(5)検索ボタンを押します。デフォルトの状態では「DATA.DAT」と言う名称の検
索結果ファイルが、「Documents and Settings」ディレクトリ内のログイン
ユーザーの「KeySQL」のホームディレクトリ下に 「DATA.DAT」と言う検索
結果ファイルが作成されます。
例) Administratorでログインしている場合のデフォルトの保存場所
C:¥Documents and Settings¥Administrator¥Application Data
¥Tenik¥KeySQL4.2
*ドライブレターとユーザー名をご利用の環境に沿って読み替えて下さい。
ファイル名と保存場所は、任意の名前と場所に変更する事が可能です。次にそれ
らの設定の変更の仕方を説明します。
KeySQL for MS Windows ユーザーズ・ガイド 6-3
6
1)検索結果ファイルの保存場所とファイル名を変更する場合
「作業状態の設定」ボタン
図6-2 作業状態の設定(1)
「作業状態の設定」ボタンを押し、設定画面を開きます。
図6-3
作業状態の設定(2)
「出力ファイル名」の項目を任意の保存場所と、任意のファイル名に書
き換えます。保存場所は「?」ボタンを押して行く事でマウスでも操作
も可能です。
6-4 KeySQL for MS Windows ユーザーズ・ガイド
6.2 表名・項目名の選択方法
シートリストはアプリケーションのワークシートの列に対応しています。シート
リストに読み込みたい表名・項目名を設定する方法を説明します。
表リストにマウスのカーソルを移動して選択し、表名をクリックすると、項目リ
ストにその表名の項目一覧が表示されます。ここで、項目コピー先ボタンを上向
検索結果ファイル名を変更する場合
きにしておき、項目リストにカーソルを移動して選びたい項目の一つをクリック
すると、シートリストに表名・項目名が設定されます。
項目名の貼り付けにはドラッグ&ドロップを使用することができます。この場
合、シートオプション設定の項目一覧オプションで、ドラッグ&ドロップの使用
をオンにしておきます。項目をドラッグしてシートリストにドロップしてくださ
い。
シートリストのセル番号の反転表示は、次に表名・項目名が設定される場所を示
しています。最初はセル番号1が反転表示されています。項目をクリックする
と、セル番号1に選択された表名・項目名が表示され、セル番号2が反転しま
す。
項目リストで項目をクリックする毎に、反転表示は右隣りのセルに移動します。
項目リストから検索したい項目を選択することで、シートリストに設定項目が表
示されます。
他の表の項目を選択したいとき(表結合)は、表リストから選択したい表名をク
リックし、項目リストから前の操作と同様に項目を選択します。
次に設定するセル番号は反転表示されていますが、マウスで別のセル番号にカー
ソルを移動することができます。セル番号をクリックすると、既に設定済みのセ
ルかどうかにかかわらず、反転表示はそのセルに移ります。そこで項目リストの
項目をクリックすると、そのセルに、選択した表名・項目名が新しく設定されま
す。
一度設定したセルを上書きによって変更したいときは、シートリスト内の変更し
たいセル番号をマウスでクリックして選択した後、表名・項目名を再設定しま
す。
シートリスト内のセルを空白のままにして検索を行うと、その行は空白のまま
ワークシートに出力されます。ワークシート上で空白を開けたいときなどに利用
できます。
KeySQL for MS Windows ユーザーズ・ガイド 6-5
6
6.2.1 メイン画面操作方法
この項では、「KeySQL」メイン画面での表名・項目名を設定するまでの一連の操
作方法について説明します。
図6-4 メイン画面
ログインが完了すると、上図のようなメイン画面が表示されます。表名リストに
は、そのオーナーが使用できる表名が、自動的に読み込まれて表示されます。
シートリストはアプリケーションのシートに対応しています。次の手順に従い、
貼付け先の指定、作業状態の設定および、シートリストに、読み込みたい表名・
項目名を設定してください。 (1)アプリケーションボックスにエクセルが表示されている事を確認します。
(2)トピック名にブック名、シート名を指定します。(図3-10参照)
(3)貼り付けるセル位置を指定します。
(4)必要であればボタンを押して、作業状態を設定します。
(5)表リストにマウスでカーソルを移動して、選びたい表名をクリックする
と、項目リストにそのテーブルの項目一覧が表示されます。
(6)項目一覧横のボタンをクリックし、表示を
(シートリストにコピー)と
しておきます。
(7)項目リストにカーソルを移動し、選びたい項目をクリックします。または、
矢印キー押下で連続入力ができます。項目一覧オプション設定で「ドラッグ
&ドロップ使用」が選択されている状態では、ドラッグ&ドロップでのみ入
力が可能です。
6-6 KeySQL for MS Windows ユーザーズ・ガイド
KeySQLでは、作業操作を向上させるために、検索項目を貼り付ける際に「ドラッ
グ&ドロップ」の機能が使用できます。
ボタンをクリックして「項目一覧
オプション」設定の「ドラッグ&ドロップを使用」をチェックしておきます。こ
のモードでは、1つの項目を選択する場合にはダブルクリックを使用してくださ
い。また、条件リストへの項目の貼り付けも、各条件画面を開くことなく項目を
選択するだけで、自動的に項目を条件式や条件リストに貼り付けることができま
す。
6
図6-5 項目一覧オプション設定
シートリストを操作するボタンの機能は以下の通りです。
: 項目間に1つセルを挿入します。挿入前にあった項目は後ろに 移動します。 : 項目を削除します。削除項目をクリックし、リバース状態にして
からこのボタンをクリックします。
: 項目を消去します。消去された項目は空欄になります。
: 選択された項目の表示幅を項目名にあわせて調整します。
: 選択された項目の表示幅を、規定値に戻します。
: すべての項目の表示幅を項目名にあわせて調整します。
: すべての項目の表示幅を、規定値にあわせて調整します。
: シートリストを初期化します。
KeySQL for MS Windows ユーザーズ・ガイド 6-7
6.2.2 検索項目選択 「KeySQL」メイン画面で検索項目を設定すると以下の様な画面となります。
図6-6 シートリスト設定 上記の例は、
セル1に「EMP」表の「EMPNO」項目のデータ セル2に「EMP」表の「ENAME」項目のデータ セル3に「EMP」表の「JOB」項目のデータ セル4に「EMP」表の「MGR」項目のデータ セル5に「EMP」表の「HIREDATE」項目のデータ セル6に「EMP」表の「SAL」項目のデータ
セル7に「EMP」表の「COMM」項目のデータ セル8に「EMP」表の「DEPTNO」項目のデータ
をブック「社員.xls」、シート「Sheet1」に取り込むように設定しました。
6-8 KeySQL for MS Windows ユーザーズ・ガイド
6.3 検索条件の設定 検索項目の選択が完了したら、次に条件設定を行います。各条件はタグに表示さ
れています。
設定する条件のタグをクリックすると、それぞれの条件が設定可能な画面に切り
替わります。
6.3.1 検索条件設定画面 検索条件設定実行時の画面について説明します。
6
図6-7 検索条件設定
検索条件のタグをクリックしてを
クリックすると、上記の設定画面が表示
されます。既に条件が条件リストに登録されている場合は、登録されていないリ
スト番号をクリックして入力を開始してください。
検索条件式の定数入力部には、手入力または項目リストから選択することで指定
が可能です。後者の場合、項目一覧横のボタンが
の状態で項目名をクリッ
クすると、定数部に項目が入力されます。項目一覧のオプション「ドラッグ&ド
ロップ」の設定がオンになっている場合は、この操作で定数部に項目名を貼り付
けることができます。 比較演算子ボタンをクリックすると、演算子が切り替わります。条件式を確定す
るには
をクリックします。また検索条件画面を終了させるには
リックします。
KeySQL for MS Windows ユーザーズ・ガイド 6-9
をク
比較子説明
: 等号(equal)
: 不等号(not equal)
: 未満(less than)
: より上(greater than)
: 以下(less than equal)
: 以上(greater than equal)
: ∼以上∼以下の範囲を指定します。
: 副問い合わせ内容に一致した存在レコード。
: 副問い合わせ内容に一致した内容が存在するレコード。
: 指定した項目にデータがないレコード。
: 文字パターン一致を調べます。
ボタンの機能
: 条件リストに空欄を挿入します。
: 条件式を削除します。
: 条件式を消去します。
: 条件リストから未入力の行を削除します。
: 条件式の入力を行います。
: 条件式の論理条件式を入力します。
: 副問い合わせ設定画面を表示します。
件数
: レコード数の指定を直接入力します。
//
ポイント
//
//ポイント
ポイント//
定
数部右辺に必ず副問い合わせを設定する比較子は、EXISTS、IN、ANY、ALLの4つ
です。ANY、ALLは比較子
をクリックすると設定が可能になります。ANYは副問
い合わせの結果の少なくとも1つと比較し、ALLは同じく副問い合わせの結果のす
べての値と比較する演算子です。
NOT BETWEENおよびNOT LIKEを設定するには、まずBETWEENまたはLIKEをクリック
してください。LIKE設定時に比較対象となる定数文字列内に文字として%などの
ワイルドカードを設定する場合、認識用の区切り文字をESCAPEに記述します。
例)従業員.有給取得率 LIKE 50¥%% ESCAPE ¥
項目(従業員.有給取得率)が「先頭が50%である文字列すべて」に一致するもの。
6-10 KeySQL for MS Windows ユーザーズ・ガイド
6.3.2 LIKE、NOT LIKE演算子設定
この項では、検索条件設定時のLIKE、NOT LIKEの設定方法について説明します。
項目部に設定した項目と定数部に入力したパターンに一致する(LIKE)、一致しな
い(NOT LIKE)を調べます。
6
図6-8 LIKE演算子設定
操作方法は、次のとおりです。
(1)
ボタンをクリックし、検索条件設定ボックスを呼び出します。
(2)項目部に、LIKE演算子を指定する表名・項目名を、項目リストをクリックし
て選びます。
(3)
を演算子リストからクリックして選びます。[NOT LIKE]を選択する
場合は、設定ボックス内に表示された
ボタンをクリックしてくださ
い。表示が替わります。
(4)定数部に検索する文字列を入力します。アルファベットや全角漢字などの
指定ができます。
(5)各種データベースで使用するワイルドカードを単に文字列として定数部に
使用する場合、文字列と認識させるための区切り文字をESCAPEに設定し、 該当文字列の前にその区切り文字を挿入します。
(6)
ボタンをクリックしてコンディション・リストに条件を決定します。
日付を設定するときは、「KeySQL」日付書式に合わせて設定してください。
KeySQL for MS Windows ユーザーズ・ガイド 6-11
6.3.3 NULL、NOT NULL演算子設定
項目部に指定した項目に、データが存在する(NOT NULL)、あるいは存在しない
(NULL)レコードの検索を行ないます。
図6-9 NULL設定
操作方法は、次のとおりです。
(1)
ボタンをクリックし、検索条件設定ボックスを呼び出します。
(2)まず項目部に、NULL値指定をする表名・項目名を、項目リストをクリックして
選びましょう。
(3)
ボタンをクリックします。再びボタンをクリックすると
に切り替わります。
(4)
ボタンをクリックして、コンディション・リストで条件を決定します。
6-12 KeySQL for MS Windows ユーザーズ・ガイド
6.3.4 BETWEEN、NOT BETWEEN演算子設定
定数部に指定した定数の範囲に入っている(BETWEEN)、あるいは入っていない(NOT
BETWEEN)を検索します。
6
図6-10 BETWEEN 設定
操作方法は、次のとおりです。
(1)
ボタンをクリックし、検索条件設定ボックスを呼び出します。
(2)まず、項目部に、BETWEEN指定をする表名・項目名を、項目リストをクリック
して選びます。
(3)
ボタンをクリックします。再びボタンをクリックすると(NOT
BETWEEN)に切り替わります。
(4)定数部に範囲を指定する定数を次の例のように設定します。
例1.1 ∼ 5の範囲を指定するときは、
1 AND 5
と定数部に入力します。
(5)
ボタンをクリックして、コンディション・リストで条件を決定します。
日付けを設定するときは、「KeySQL」日付け書式に合わせて設定してくださ
い。
KeySQL for MS Windows ユーザーズ・ガイド 6-13
6.3.5
検索条件論理式作成
検索条件の指定で条件リストに設定した条件間の、関連付けについて説明しま
す。
条件リストに複数の条件式を設定したとき、論理式の作成を特に行わなければ、
これらの条件式はANDで連結されます。この論理式を変更したいときは
ボタ
ンをクリックしてください。検索条件論理式画面が表示されます。
図6-11 検索条件論理式
条件リストの番号がANDで連結されて表示されます。
1 AND 2 AND 3 ....
この論理式において、( )、NOT、AND、 ORでコンディション・リスト番号を組み
合わせることができます。
検索条件論理の優先順位は次のとおりです。
[高] ( ) , NOT , AND , OR
[低] この画面はエディット・ボックスです。内容の変更は、エディット・ボックス内
にカーソルを移動してクリックしてから行います。
変更後に
ボタンをクリックしてください。設定内容が正しくない場合は、
メッセージ「論理式に誤りがあります。(∼文字め)」が表示されます。また、条
件番号を検索条件論理式内で使用しないと、その条件は無効となります。コン
ディション・リストの条件番号の一部を省略して、検索条件論理式を作成するこ
ともできます。
ボタンをクリックすると、検索条件論理式画面は消えます。
クリックする前に
ボタンを
ボタンをクリックすると、エディット・ボックスに変更
を加えていても無効になりますので、注意してください。
一度論理式を設定してから検索条件の指定を行うと、前の論理式は破棄され、再
びANDで結合されます。その場合は論理式の変更をやり直してください。
6-14 KeySQL for MS Windows ユーザーズ・ガイド
6.3.6
副問い合わせ設定
この項では副問い合わせの設定方法を説明します。
副問い合わせは照会方法の1つで、一方の表のデータをもとに他方の表から結果
を得たい場合に使用します。副問い合わせはネスト化が可能で、レベルの制限は
ありません。
検索条件設定画面内の
をクリックすると、副問い合わせ画面が表示されま
す。
6
図6-12 副問い合わせ画面
条件入力の方法はメイン画面と同様です。
副問い合わせ条件を確定するには画面右上の
副問い合わせ画面Sを終了させるには
をクリックします。
をクリックしてください。
メイン画面の条件右辺に「副問い合わせ・・・」の表示がされます。
副問い合わせ設定後、
クリックで条件を確定します。
副問い合わせ設定画面を終了するには
をクリックします。
KeySQL for MS Windows ユーザーズ・ガイド 6-15
6.4
表結合
シートリストに複数表の項目を選択したときの、項目の関連付けの操作について
説明します。表結合の方法は、2通りあります。
(1)まず最初の方法は、表結合リストから選択する方法です。
ボタンをク
リックすると、結合できる候補のリストボックスが表示されます。リストボッ
クスには、
表名1. 項目名 = 表名2. 項目名
の形式で異なる表の項目で、同じ項目名の組み合わせがすべて列挙されます。
この補の中から行いたい結合条件を選んでクリックすると、条件リストに新し
い条件として付け加わります。
(2)もうひとつの方法は、検索条件画面において[=]比較演算子を使用して、直
接表名・項目名を結び付ける方法です。異なる名称の項目で表結合をしたい
場合はこの方法を用います。
(1)の方法は、(2)の方法の候補(ただし項目名が同じもの)をリストボックスに
表示させて、その中から選択するものです。
(1)の場合は、シートリストに複数の表の項目を指定してからボタンをクリッ
クしてください。
シートリストに選択されている表が一種類のときは、
ボタンをクリックし
ても表結合リストは表示されません。
☆ 複数の表の検索実行時に外部結合を行うことができます。
図6-13 外部結合設定画面
(1)表結合条件設定後、外部結合条件とするコンディション番号をクリック反
転させた状態で
ボタンを押します。
(2)演算子部をクリックすると外部結合表示に切り替わります。
:外部結合を右辺を主に行います。
:外部結合を左辺を主に行います。
:両辺に共通にないデータ。
(3)指定した表結合条件設定の最後に"(+)"が表示された条件が外部結合条
件となります。
6-16 KeySQL for MS Windows ユーザーズ・ガイド
6.4.1 表結合設定画面
表結合実行時の画面について説明します。
6
図6-14 表結合設定
ボタンをクリックすると、結合できる候補の表結合リストが表示されま
す。
表結合リストには、
表名1. 項目名 = 表名2. 項目名
の形式で異なる表の項目で、同じ項目名の組み合わせがすべて列挙されます。
この候補の中から表結合を行いたい条件を選んで
ボタンをクリックする
と、コンディション・リストに新しい条件として付け加わります。
ボタンをクリックすると、表示されているすべての表結合候補が選択され
て条件リストに挿入されます。
表結合候補一覧画面を終了させるには
ボタンをクリックします。
KeySQL for MS Windows ユーザーズ・ガイド 6-17
6.5 グループ関数設定
「KeySQL」は、グループ関数(列関数) (最大、最小、平均、合計、件数、標準偏
差、分散)をサポートしています。グループ関数をデータ検索時にセル番号や条件
式に指定すると、自動的に、その指定によるデータの抽出を行うことができま
す。
グループ関数を使用する場合、グループ条件設定機能も簡単に設定することがで
きます。
この項では、次の内容について解説します。
6-16
・
データの検索統計処理
・
グループ条件の設定
KeySQL for MS Windows ユーザーズ・ガイド
6.5.1
グループ関数を用いたデータの抽出
データベースのデータをアプリケーションのワークシートへ抽出する際に、
「KeySQL」では豊富なグループ関数(列関数) (最大、最小、平均、合計、件数、
標準偏差、分散)をサポートしています。
グループ関数の設定手順を説明します。
(1)シートリスト上の該当セルをダブルクリックすると、「検索項目詳細」画面が
表示されます。
(2)デフォルトで「項目」に検索項目が表示されていますので、この文字列をカー
ソルで選択し、
ボタンをクリックすると、「グループ関数」画面に検索
項目が表示されます。「グループ関数」画面で任意の検索項目を項目リスト
から選択することも可能ですが、「検索項目詳細」画面の「式」に検索項
目、その他式がある場合には、挿入モードでグループ関数設定された項目が
上書きされますので、注意してください。
(3)リストから表示されたグループ関数をマウスでクリックし、関数を決定しま
す。必要があれば演算子(DISTINCT,ALL)を設定します。
ボタンをクリッ
クすると確定です。
(4)
ボタンをクリックすると「検索項目詳細」画面の式に(2)、(3)で指定し
たグループ関数と検索項目が設定されます。
その他、表結合、検索条件の設定を行なって検索を行ないます。
また、一度指定したグループ関数は、その後の表名・項目名の設定にも反映され
ます。異なった列関数を指定するときは、その都度、(1)から(4)の操作を行って
ください。
[グループ関数使用時の注意事項]
シートリスト内の検索項目すべてにグループ関数を指定し、かつ「グループ条件
設定」機能を使用しない場合は、すべてのデータがグルーピング対象となりま
す。この場合、検索件数は常に1件となります。
特定の項目でグルーピングを行い、その列内の最大、最小等を検索したい場合
や、更にグループ条件を設定したい場合は、「グループ条件設定」機能を使用し
ます。グループ条件の設定を行なう場合は、グループ条件設定画面で行なってく
ださい。
シートリスト内で関数設定が「なし」の検索項目は、自動的にグループピング対
象になります。
KeySQL for MS Windows ユーザーズ・ガイド
6-17
6
6.5.2 グループ関数設定画面(1)
この項では、シートリストに選択された項目へのグループ関数の設定方法につい
て、画面を用いて解説します。
図6-14 グループ関数設定画面(1)
まず、グルーピングを行う項目及びグループ関数を付ける項目をシートリストに
設定します。
上記の画面では、
セル1に「EMP」表の「JOB」項目でグルーピング
セル2に「EMP」表の「SAL」項目の最大データ
セル3に「EMP」表の「SAL」項目の最小データ
セル4に「EMP」表の「SAL」項目の平均データ
セル5に「EMP」表の「SAL」項目の合計データ
を取り込むために、各項目を設定しました。
6-18
KeySQL for MS Windows ユーザーズ・ガイド
6.5.3 グループ関数設定画面(2)
この項では、グループ関数の設定方法について、画面を用いて解説します。
6
図6-16 グループ関数設定画面(2)
(1)シートリスト上の該当セルをダブルクリックすると、「検索項目詳細」画面が
表示されます。
(2)まず、「式」に表示される項目名をドラッグし、範囲を指定します。次に
ボタンをクリックし、「グループ関数」画面を表示させてください。
次に、グループ関数リストをクリックします。
(3)表示されたグループ関数リストから使用する関数をマウスでクリックし、関数
を決定します。必要があれば演算子(DISTINCT、ALL)を設定します。
ボ
タンをクリックすると確定です。
(4)
ボタンをクリックすると「検索項目詳細」画面の式に(2)、(3)で指定し
たグループ関数と検索項目が設定されます。
KeySQL for MS Windows ユーザーズ・ガイド
6-19
6.5.4 グループ関数を用いた検索画面
この項では、グループ関数を使用した検索の結果を表示します。
図6-17 グループ関数を用いた検索結果
6-20
KeySQL for MS Windows ユーザーズ・ガイド
6.5.5
グループ設定画面(1)と方法
この項では、グループ設定(GROUP BY)方法について、画面を用いて解説しま
す。
6
図6-18 グループ設定画面(1)
EMP. JOBでグルーピングを行ったものに更にEMP. HIREDATEをグルーピングの条件
として設定を行います。
(1)「グループ」のタグをクリックしてグループ設定画面を開きます。
(2)項目のコピー先ボタンが
になっている事を確認し、表名・項目名リスト
からグループ条件とする項目を選びます。これでグルーピングの設定は完了
です。
KeySQL for MS Windows ユーザーズ・ガイド
6-21
6.5.6 グループ条件設定画面(2)
この項では、グループ条件の設定方法について、画面を用いて解説します。
図6-19 グループ条件設定画面(2)
EMP. JOBでグルーピングを行ったものに更にEMP. SALの平均が350000以上の条件
設定を行います。
(1)「グループ条件」のタグをクリックしてグループ条件設定画面を開きます。
(2)まず、項目をグループ条件設定画面の左辺にペーストし範囲指定のドラッグを
します。
ボタンをクリックして、「グループ関数」画面を表示させま
す。
(3)グループ関数をリストから選択し、
ボタンで確定し、
面を終了させます。
(4)比較演算子をクリックして演算子を指定します。
(5)定数部に比較する定数を入力します。
(6)
ボタンをクリックして条件を確定させます。
これでグループ条件の設定は完了です。
6-22
KeySQL for MS Windows ユーザーズ・ガイド
ボタンで画
6.5.8
グループ条件論理設定画面
6
図6-20 グループ条件論理式設定画面
をクリックすると、条件リストのグループ論理番号がANDで連結されて
表示されます。
例1:デフォルト設定
1 AND 2 AND 3 ....
この論理式において、( ) , NOT , AND、ORを使用してコンディション・リスト
番号を組み合わせることができます。
例2:そのほかの論理演算子を使用した場合
(1 AND 2) OR ( 3 AND 4) AND (NOT ( 5 OR 6))
この画面はエディット・ボックスです。内容を変更するときは、エディット・
ボックスにカーソルを移動してクリックして、行ってください。
また、条件番号を検索条件論理式内で使用しないと、その条件は無効となりま
す。コンディション・リストの条件番号の一部を省略して検索条件論理式の作成
を行うこともできます。
KeySQL for MS Windows ユーザーズ・ガイド
6-23
6.6 ソート指定
検索項目をワークシートに貼り付ける際、項目を順序立てて整列したい場合に
ソート機能を使用します。
図6-21 ソート指定画面
<指定方法>
(1)ソートする項目を項目一覧から選択します。
ボタンの状態で項目一覧の
項目をクリックすると、条件リストに項目が指定されます。直接記述で指定
を行う場合には
ボタンをクリックして入力します。項目一覧のオプショ
ンが「ドラッグ&ドロップ」の指定になっている場合には、ドラッグ&ド
ロップで項目を条件リストに貼り付けます。
(2)ソートの順序を指定します。条件リストの項目はデフォルトでは昇順になって
おり、項目名の表示のみされています。
のクリックで昇順に、
の
クリックで降順に指定が行われます。降順の場合のみ、表示が"DESC"と項目
名の後ろに表示されます。
6-24
KeySQL for MS Windows ユーザーズ・ガイド
6.7 ユニオン設定
2つの問い合わせの組み合わせから検索を実行します。集合演算子には、UNION、
UNION ALL、INTERSECT、MINUSがあります。
6
図6-22 ユニオン設定画面
<指定方法>
(1)タグ「ユニオン」をクリックし、
をクリックして条件入力を開始しま
す。集合演算子をリストボックスから選択してください。各演算子の意味は、
次のとおりです。
: 指定の副問い合わせとの条件合併を行います。 結果から重複行を取り除きます。
: 指定の副問い合わせとの条件合併を行います。 結果に重複行は表示しません。
: 指定の副問い合わせとの条件交差を行います。
2つの条件の共通な結果のみを表示します。
: 指定の副問い合わせとの条件差を行います。メインとなる検索
条件結果から副問い合わせとの共通な結果を取り除いたもの
を表示します。
KeySQL for MS Windows ユーザーズ・ガイド
6-25
(2)副問い合わせとなる条件を設定します。
い合わせ画面が表示されます。 ボタンをクリックすると、副問
図6-23 副問い合わせ画面
条件入力の方法はメイン画面と同様です。副問い合わせ条件を確定するには、画
面右上の
をクリックします。副問い合わせ画面を終了させるには
をク
リックしてください。メイン画面の条件右辺に「副問い合わせ・・・」の表示が
されます。
(3)副問い合わせ設定後、
入力画面を終了するには
6-26
KeySQL for MS Windows ユーザーズ・ガイド
クリックで条件を確定します。ユニオン条件 をクリックします。
6.8 条件設定一覧画面
この項では、各種検索条件に設定された条件式の一覧画面について説明します。
6
図6-24 条件設定一覧画面
各列左から、条件種別、条件式番号、条件式の順に表示されています。条件式番
号は、各条件設定中のリスト番号です。条件種別の内容は次のとおりです。
: 表結合設定式の表示です。
: 検索条件設定式の表示です。
: グループ設定項目の表示です。
: グループ条件設定式(GROUP BY HAVING)の表示です。
: ソート順設定項目の表示です。
: ユニオン設定式の表示です。
各条件式上でダブルクリックすると、それぞれの設定画面が表示されます。
KeySQL for MS Windows ユーザーズ・ガイド
6-27
6.9 関数ウイザード
「KeySQL」は、データベースが提供している式及び関数を使用する方法について
説明します。
6.9.1 関数ウイザード画面
選択した項目に関数を付与して検索する事ができます。代表的な関数として
「NVL」(検索項目にデータが無い場合に指定したデータを表示する関数)を例にそ
の設定手順を説明します。
(1)検索項目をシートリストに選択します。
(2)シートリスト番号をダブルクリックして検索項目詳細設定画面を表示します。
(3)項目名を指定範囲して、コピー(Ctrl+C)してから
ボタンを押して関数
ウイザードを表示します。
(4)関数の分類からその他の関数をクリックすると関数表示ボックスに「NVL」
が表示されます。
(5)関数「NVL」をクリックするとその書式と設定ボックスが入力状態となり
ます。
図6-25 関数入力
(6)書式に従いコピーした項目をペースト(Ctrl+V)し、必要項目を入力して「OK」
ボタンを押して確定します。
6-28
KeySQL for MS Windows ユーザーズ・ガイド
6.9.2
式の設定
検索項目に式を設定する手順を説明します。
(1)検索項目をシートリストに選択します。
(2)シートリスト番号をダブルクリックして検索項目詳細設定画面を表示します。
(3)検索項目詳細設定画面の式に入力します。
6
図6-26
(4)
式入力
をクリックすると確定します。
KeySQL for MS Windows ユーザーズ・ガイド
6-29
6.10 ローカル別名の設定
表名、項目名に対し「KeySQL」が稼動しているクライアント上だけで理解できる
別名を付けることが可能です。意味の無い文字と数字で構成されている表・項目
名に、意味のある別名を付けるとにより操作環境は格段に良くなります。この設
定を行なった後は、全て別名して表示されます。ただし、SQL表示は実名で表示さ
れます。
表別名の設定手順を説明します。
(1)メニューバーの全部閉じるを選択して、「ローカル別名の設定」を選択可能と
します。
(2)「ローカル別名の設定」をクリックしてローカル別名の設定画面を表示しま
す。
(3)表名を設定するには「表追加」ボタンを押して表別名の追加設定画面を表示し
ます。
(4)表実名のリストから変更する表をクリックし、表別名入力ボックスに別名を入
力します。
(5)「OK」ボタンを押して入力を確定します。
(6)ローカル別名の設定画面に戻りますので、「設定を有効にする」をオンにして
「OK」ボタンを押します。
(7)表一覧の内容が設定内容に従い表示されます。
項目別名の設定手順を説明します。
(1)メニューバーの全部閉じるを選択して、「ローカル別名の設定」を選択可能と
します。
(2)「ローカル別名の設定」をクリックしてローカル別名の設定画面を表示しま
す。
(3)項目名を設定するには「列編集」ボタンを押して列別名の設定ー表の選択画面
を表示します。
(4)変更する項目が含まれる表を選択し(表別名が付いている表は表別名で表示さ
れます)、「次へ」ボタンを押して列別名の設定ー列別名の編集画面を表示し
ます。
(5)列別名をゆっくりと2回クリックすると入力状態になるので、別名を入力し、
「OK」ボタンを押します。
(6)ローカル別名の設定画面に戻りますので「設定を有効にする」をオンにして
「OK」ボタンを押します。
(7)項目一覧の内容が設定内容に従い表示されます。
6-30
KeySQL for MS Windows ユーザーズ・ガイド
6.11
表結合候補の設定
「KeySQL」は、複数表から検索する場合に表結合の候補を自動的に表示します
が。表結合の候補で表示されるのは、選ばれた表の中で同じ項目名があるものだ
けですので充分ではありません。項目名が異なるが、表結合の条件にしたいも
の、あるいは、表結合の候補から除外したいものを設定するのがこの機能です。
この設定は、表結合の候補にしか反映されません。
表結合候補に追加する手順を説明します。
(1)メニューバーの表結合候補の設定を選択して、表結合候補の設定画面を表示し
ます。
(2)追加候補の「追加」ボタンを押して追加候補の設定画面を表示します。
(3)上部が条件式の左辺、下部が条件式の右辺となります。オーナー、表及び列の
コンボボックスから追加する項目を選択します。
(4)「OK」ボタンを押すと、表結合候補の設定画面に設定した内容が反映されま
す。
(5)「OK」ボタンを押して確定します。
設定した2つの表を含む検索を「KeySQL」で設定した場合に、表結合候補ボタン
を押すと、表結合候補一覧表画面に追加した内容が表示されます。
設定を削除する場合は表結合候補の設定画面で、削除する項目を選択して
「削除」ボタンを押します。
設定を変更する場合は表結合候補の設定画面で、変更する項目を選択して
「変更」ボタンを押して変更します。
KeySQL for MS Windows ユーザーズ・ガイド
6-31
6
表結合候補から場外する手順を説明します。
(1)メニューバーの表結合候補の設定を選択して、表結合候補の設定画面を表示し
ます。
(2)除外候補の「追加」ボタンを押して除外候補の設定画面を表示します。
(3)上部が条件式の左辺、下部が条件式の右辺となります。オーナー、表及び列の
コンボボックスから除外する項目を選択します。
(4)「OK」ボタンを押すと、表結合候補の設定画面に設定した内容が反映されま
す。
(5)「OK」ボタンを押して確定します。
設定した2つの表を含む検索を「KeySQL」で設定した場合に、表結合候補ボタン
を押すと、表結合候補一覧表画面に追加した内容が表示されません。
設定を削除する場合は表結合候補の設定画面で、削除する項目を選択して
「削除」ボタンを押します。
設定を変更する場合は表結合候補の設定画面で、変更する項目を選択して
「変更」ボタンを押して変更します。
6-32
KeySQL for MS Windows ユーザーズ・ガイド
第7章
更新・追加・削除操作
「K e y S Q L 」には、O r a c l e データベースのデータの更新、追加、
削除機能があります。
この章では、次の項目について説明します。
・
追加機能
・
・
削除機能
更新機能
・
レコードロック、アンロック機能
KeySQL for MS Windows ユーザーズ・ガイド
7-1
7
7.1
操作概要
更新、追加の操作は、アプリケーションと「KeySQL」の両方の画面で行います。
「Excel」のシートで追加、更新のデータ入力を行い、「KeySQL」の画面で実行し
ます。削除は「KeySQL」の画面のみで可能です。
「KeySQL」操作のキーは、アプリケーションのワークシートの行番号とすべて対
応しています。
更新、追加、削除の実行にあたっては、検索機能を使用して1度アプリケーショ
ンのワークシートにデータを取り込むと、とても簡単に作業ができます。更新、
削除処理を行うときはデータベースの整合性を守るため、1度加工するデータを
検索してください。また、更新、削除する条件が決まっているのであれば、デー
タを検索せずに処理を行うことも可能です。
7.2
追加データの入力
追加データの入力は、次の手順で行います。
(1)アプリケーションの1行目に表名、2行目に項目名を入力します。
(2)ワークシートの3行目以降に、追加するデータを入力します。
・
「KeySQL」のトピックス名、シートリスト内のセル番号、行列指定は、ワー
クシートやデータ入力位置等と正確に対応づけてください。
・
データベースにデータが全くない(データ0件)表名・項目名のみの場合も、
「KeySQL」ではその表名・項目名のみを、アプリケーションへに検索抽出する
ことが可能です。
・
「KeySQL」のメイン画面で
ボタンをクリックし、更新・追加・削除画面
を開きます。
7-2
・
更新・追加・削除画面で、開始行番号と終了行番号を入力します。
・
[追加]ボタンをクリックします。
・
選択をしなかった項目名のデータは、「NULL」として扱われます。
KeySQL for MS Windows ユーザーズ・ガイド
7.2.1
レコードの追加
データレコードの追加処理の手順を説明します。
7
図7-1 データの抽出
あらかじめ「KeySQL」で、追加する表名と項目名を、データベース・サーバーか
らアプリケーションのワークシートに抽出します。
データの追加を行う場合、データの表名・項目名がわかっている場合、データ参
照の必要のない場合は、事前にデータを抽出する必要はありません。
「KeySQL」のシートリストに、該当する表名・項目名を設定し、アプリケーショ
ンのワークシートとの3行目以降にデータを入力します。
KeySQL for MS Windows ユーザーズ・ガイド
7-3
7.2.2
アプリケーション画面でのデータ・レコード追加
まず、アプリケーションのワークシートで、追加するデータの入力を行います。
図7-2 データの追加
上記の画面では、アプリケーション上で、行番号14、15行目のデータ・レコード
を追加しています。
アプリケーション上でのデータ・レコード追加作業が終わった時点で「KeySQL」
に画面を切り替えてください。
7-4
KeySQL for MS Windows ユーザーズ・ガイド
7.3
追加実行
「追加・削除・更新」画面で、追加する行番号を指定して[追加]ボタンをクリッ
クし、データレコードの追加を開始します。
行番号に開始行と終了行を指定してください。そこで指定された範囲のレコード
はすべて追加対象となり、行順に表示されるレコード追加了解画面において〔O
K〕ボタンを選択すると、追加が実行されます。
7.3.1
レコード追加画面
メイン画面で
ボタンをクリックすると「更新・追加・削除画面」が表示
されます。
7
図7-3 更新・追加・削除画面
エディット・ボックスにカーソルをあわせ、追加するレコードの開始行番号と終
了行番号を入力します。
上記の画面では、開始行として14行目、終了行として15行目を指定しています。
追加するレコードは、開始行番号から終了行番号まで連続指定となります。1行
のみのレコード追加gのときは、終了行番号は省略できます。
KeySQL for MS Windows ユーザーズ・ガイド
7-5
7.3.2
レコード追加了解画面
追加行番号を入力後、〔追加〕ボタンをクリックすると、データ・コミットの了
解画面が表示されます。
図7-4 データ・コミットの了解画面
7-6
〔コミット〕ボタン
:追加レコードをコミットする(追加する)場合。
〔ロールバック〕ボタン
:レコードの追加を取り消す場合。
〔なにもしない〕ボタン
:コミット、ロールバックをしない。
KeySQL for MS Windows ユーザーズ・ガイド
7.4 削除実行
7.4.1 データ・レコード削除
アプリケーションのワークシート上で削除データの検索を行い、続いてレコード
の削除を行います。
7
図7-5 アプリケーション検索・抽出結果
まず、「KeySQL」を使用して、削除を行うデータ・レコードを、データベース・
サーバーからアプリケーションのワークシートに、検索・抽出します。
KeySQL for MS Windows ユーザーズ・ガイド
7-7
7.4.2
レコード削除画面
メイン画面で
ボタンをクリックすると「更新・追加・削除画面」が表示
され、更新・追加・削除ボタンと行番号指定エディット・ボックスが表示されま
す。
レコード削除の開始行番号と終了行番号を指定し、〔削除〕ボタンをクリックし
てください。「削除コミット画面」が表示されます。
図7-6 削除コミット画面
7-8
〔コミット〕ボタン
:指定した行を削除する場合。
〔ロールバック〕ボタン
:指定した行の削除を取り消す場合。
〔なにもしない〕ボタン
:コミット、ロールバックをしない。
KeySQL for MS Windows ユーザーズ・ガイド
7.5
更新実行
アプリケーションのワークシートにおいて、検索・抽出されたデータを変更し、
その行番号を「KeySQL」の更新・追加・削除画面の開始行番号/終了行番号で指
定して〔更新〕ボタンをクリックすると、レコードの更新が行われます。
そこで指定された範囲のレコードはすべて更新対象となり、行順に表示されるレ
コード更新了解画面にて〔OK〕ボタンを選択することにより、更新が開始されま
す。
7.5.1
レコード更新
7
図7-7 更新・追加・削除画面
データレコードの更新を行う場合の手順を説明します。
(1)更新するデータを、データベース・サーバーからアプリケーションのワーク
シート上に、検索・抽出します。
(2)アプリケーションのワークシート上で、データの更新を順次行います。
(3)更新した行番号を確認し、「KeySQL」へ移ります。「KeySQL」メイン画面で
ボタンをクリックし、追加、削除、更新画面を表示させます。
更新する開始行番号と終了行番号を入力し〔更新〕ボタンをクリックします。
1行のみ更新時は、終了行番号の入力は省略できます。
KeySQL for MS Windows ユーザーズ・ガイド
7-9
7.5.2 レコード更新画面
図7-8 更新画面
更新するレコードの行番号を入力後、「更新」ボタンをクリックしてください。
データ・コミットの了解画面が表示されます。
7-10
〔コミット〕ボタン
:更新レコードをコミットする(更新する)場合
〔ロールバック〕ボタン
:レコードの更新を取り消す場合。
〔なにもしない〕ボタン
:コミット、ロールバックをしない。
KeySQL for MS Windows ユーザーズ・ガイド
7.6
無検索更新
データベースのレコードを更新する場合、更新条件と更新するデータがあらかじ
め決まっている場合、例えば、EMP表でDEPTNOが10に含まれる人のSALを全て1.05
倍に更新する様な場合には、あらかじめデータを検索せずに更新が行えます。更
新するデータ、更新条件は「Excel」のシートに設定されているものを使用しま
す。
無検索更新の手順を説明します。
(1)「KeySQL」のシートリストに、更新する項目を設定します。 「EMP.SAL」
図7-9 更新項目設定
(2)「KeySQL」の条件リストの左辺に、条件を決定する項目を指定します。
「EMP.DEPTNO」
7
図7-10 更新条件設定
(3)「KeySQL」の条件リストの右辺に、「Excel」のセル列を絶対値で記述しま
す。
(4)「Excel」のセルに、更新データと更新条件を入力します。
図7-11 エクセル上の更新データ、更新条件
(5)「KeySQL」の更新ボタンを押し、「検索結果を使用しない」オプションを オンにして更新を行います。
KeySQL for MS Windows ユーザーズ・ガイド
7-11
図7-12 無検索更新実行
検索条件が入力されているセル位置を指定する書式は、{Xy}となります。
X:セルの絶対位置
y:文字列項目の場合は+を指定します。(例:B+)
更新データ、更新条件が「Excel」の連続した行に設定されている場合は、開始
行、終了行を指定して更新がおこなえます。
7-12
KeySQL for MS Windows ユーザーズ・ガイド
7.6
無検索削除
データベースのレコードを削除する場合、削除条件があらかじめ決まっている場
合、例えば、EMP表でDEPTNOが10に含まれる人全てを削除する様な場合には、あら
かじめデータを検索せずに削除が行えます。削除条件は「Excel」のシートに設定
されているものを使用します。
無検索削除の手順を説明します。
(1)「KeySQL」の条件リストの左辺に、条件を決定する項目を指定します。
(3)「KeySQL」の条件リストの右辺に、「Excel」のセル列を絶対値で記述しま
す。
図7-13 無検索削除条件
7
(4)「Excel」のセルに、削除条件を入力します。
(5)「KeySQL」の更新ボタンを押し、「検索結果を使用しない」オプションを オンにして削除を行います。
図7-14 エクセル上の無検索削除条件
検索条件が入力されているセル位置を指定する書式は、{Xy}となります。
X:セルの絶対位置
y:文字列項目の場合は+を指定します。(例:B+)
削除条件が「Excel」の連続した行に設定されている場合は、開始行、終了行を指
定して削除がおこなえます。
KeySQL for MS Windows ユーザーズ・ガイド
7-13
7.7
7.7.1
更新、追加、削除時のレコードのロック、アンロック
レコードロック機能
検索レコードをロックする機能です。検索したレコードはロックされ、他のユー
ザーがそのレコードを更新したり削除したりする事を防ぎます。他のユーザーが
該当レコードを検索することは可能です。
7.7.2
ロックモードの指定
作業状態設定の検索オプション「検索行をロックする」をオンにしてください。
その後に検索を実行すると、検索レコードはロックされ、検索ボタンの表示が
にかわります。
図7-15 レコードロック指定時の作業状態設定画面
「選択行をロックする」をオンに設定すると、検索ボタンが次の様に変わります。
また、検索実行後、次のボタンが新たに表示されます。
7-14
:
レコード・ロック・モードで検索を実行します。
:
検索データがロック状態であることを示します。
KeySQL for MS Windows ユーザーズ・ガイド
7.7.3
レコードロック
通常の検索と同じように検索項目、条件を指定して検索を実行してください。
データベースに対して「select for update」モードで検索を実行します。検索し
たすべてのレコードにロックがかかり、そのレコードに対する他のアプリケー
ションの更新・削除はできなくなります。
すでにロックしているユーザーが他にあるときは、検索がエラーとなります。
また検索終了と同時に
ボタンの右に
ボタンが表示されます。
このボタンは、ロックを解除するために使用します。
7.7.4
ロックの解除
ロックは、更新・追加・削除のいずれかの操作を行うと解除されます。
これら操作の最後には、必ずコミットまたはロールバックが、データベースに対
して発行されています。これによって、先のレコードロックも解除されます。
ロックが解除されると
ロックモードの検索後に
ボタンは、画面からなくなります。
を押すと、レコードロックは解除されます。更
新・追加・削除等の操作をせずにロックを解除したいときは、このボタンを押し
てください。データベースにロールバックを発行します。
また、作業状態設定の検索「ロック」をオフにしても、同様にロックを解除しま
す。
ロックモードの検索後、続けて検索を実行しようとすると、最初の検索のロック
を解除してから次の検索に移ります。よって複数の検索の両方にロックがされる
ことはありません。
7.7.5
ロックを使用するときの注意
検索条件でレコード件数を指定して検索を行うと、実際に検索したレコード(指定
件数文のレコード)だけでなく、データベース上の条件を満たす、すべてのレコー
ドがロックされます。
よって、アプリケーションにロードされたレコード以外にも、ロックされている
可能性があることに注意してください。
KeySQL for MS Windows ユーザーズ・ガイド
7-15
7
第8章
ダイレクト
SQL
入力機能
ダイレクトSQL
SQL入力機能
この章では、ダイレクトSQL入力について説明します。
・ダイレクトSQL入力
・実行結果ウィンドウ
・ダイレクトSQLマクロ・ジェネレート/実行
KeySQL for MS Windows ユーザーズ・ガイド
8
8-1
8.1
ダイレクトSQL入力
「KeySQL」では、SQL文を直接入力してデータベースサーバーへ送信し、実行結
果を「KeySQL」に表示したり、アプリケーションのワークシートへ転送すること
ができます。
メニューバー上の「表示(V)」→「ダイレクト入力(D)」をクリックしてくださ
い。ダイレクトSQLウィンドウが表示されます。
図8-1 ダイレクトSQLウィンドウ
8.1.1
ダイレクトSQLウィンドウ
ダイレクトSQLウィンドウは、SQL文の入力画面をもっています。メニューバー上
の「表示(V)」→「ダイレクト入力(D)」をクリックすると、入力画面が表示され
ます。
図8-2 ダイレクトSQL入力画面
8-2
KeySQL for MS Windows ユーザーズ・ガイド
ダイレクトSQLウィンドウの各ボタンについて説明します。
[各種ボタン]
設定
:ダイレクトSQL文入力の設定を行います。
置換
:置換文字列の参照・登録・変更をします。
変数
:変数の設定をします。
履歴
:実行されたSQL文の履歴画面を表示します。
マクロ生成
:マクロジェネレート実行画面を表示します。
:ひとつ前のSQL文を呼び出します。
:ひとつ後のSQL文を呼び出します。
ストアド・プロシージャ
:ストアド・プロシージャ/ファンクション
の実行をします。
イミディエート実行 :イミディエートモードでの実行をします。
実行
8
:入力されたSQL文を実行します。
ダイレクトSQL入力画面では、直接SQL文を入力して実行することができます。
SELECT文の実行により取得された選択リストは、メイン画面での実行と同様に、
他のアプリケーションに貼り付けることができます。
(1)マウスを使用してカーソルをSQL入力画面上でクリックし、入力カーソルが
表示された状態でキーボードからSQL文を入力します。
(2)実行ボタンまたはイミディエート実行ボタンをクリックすると入力された
SQL文が実行され、「実行結果ウィンドウ」に出力されます。
SQL文実行、イミディエート実行については、「8.1.3 実行とイミディエート実
行」をご覧ください。
KeySQL for MS Windows ユーザーズ・ガイド
8-3
8.1.2
実行結果画面
実行結果画面では、直接SQL文を入力して実行を行った結果を表示します。メイ
ン画面で検索を行った場合も、データ、ステータス等の確認ができます。
図8-3 実行結果画面
表示する内容は次のとおりです。
選択リスト
: SELECT文の実行により表示される検索データ
カラム名
: SELECT文の実行により表示される項目名
入力SQLコマンド
: 実行したSQL文のエコーバック表示
コマンドステータス : エラーメッセージや取得件数等の表示
行番号
: 選択リストの行番号の表示
画面オプションの設定および各種ボタンについては「第3章 画面説明」をご覧
下さい。
実行モードについては次項に説明します。
8-4
KeySQL for MS Windows ユーザーズ・ガイド
8.1.3 実行とイミディエート実行
ダイレクトSQLではSQL文を実行する方法として、次の2通りの方法が指定できま
す。
(1)カーソルを使用した実行
(2)イミディエート実行
それぞれの方法の一般的な意味と制限を説明します。
(1)Select文を発行した場合、カーソルモード実行は実行結果を返しますが、
イミディエートモードでは実行結果がクライアントに返りません。
(2)ホスト変数を含むSQL文を実行する場合には、カーソルモードで使用しま
す。
(3)データ定義文(DDL)を使用する場合は、イミディエートモードを利用しま
す。カーソルモードで実行するとエラーが返ります。
よって、通常のデータ検索を行う場合にはカーソルモードを使用し、実行結果の
必要のないSelect文の構文チェックやデータ定義は、イミディエートモードを使
用して下さい。
ダイレクトSQLの入力画面から、実行方法を選択できるようになっています。実
行するSQL文および変数使用の有無により、適宜使い分けてください。
また、Excel等のマクロプログラムからSQL文を実行する際にも、実行方法を指定
できます。
KeySQL for MS Windows ユーザーズ・ガイド
8-5
8
8.2 変数と置換文字列
ダイレクトSQLを使用して実行する任意のSQL文には、変数や置換文字列を使用す
ることができます。
条件指定句中の定数(文字リテラルや数リテラル)のみが異なるSELECT文を複数の
マクロ・プログラムから実行するような場合は、変数や置換文字列指定を含む
SQL文をファイルに保存しておき、実行時に変数や置換文字列の値を指定するこ
とでマクロ・プログラムの作成や修正、管理を省力化することができます。ま
た、変数は対象のデータベース・サーバー上でも変数(いわゆるホスト変数)とし
て取り扱われるので、値の取得等も可能です。
a) ダイレクトSQLウィンドウでSQL文を入力する時も、Excel 等のマクロ・プロ
グラムからSQL文の実行を行う場合でも、どちらでも使用できます。
b) 変数と置換文字列は、KeySQLクライアントにより管理されます。KeySQLクラ
イアント間(各PC間)で定義や設定を共有することはできません。
c) 各クライアント同士で同一の名前を使用して異なる値を設定しても構いませ
ん。
d) Excel等のマクロ・プログラムから、変数や置換文字列の値を設定したり、値
を取得することができます。
e) 変数と置換文字列の設定値は、ログアウトするまで保持されます。ログアウ
ト後(再ログイン時や次回の起動時)も設定を有効にする為に、テキスト・
ファイルへの設定内容保存機能やテキスト・ファイルからの読込み機能があ
ります。
8.2.1 変数と置換文字列の違い
変数は単一の値を置き換えるものです。KeySQLは変数指定の有無にかかわらず、
指定されたSQL文をデータベース・サーバーに渡し、続けて各変数の値をデータ
ベース・サーバーに渡します。また、SQL文の実行後は、データベース・サー
バーから返される各変数の値(更新値)を取り出した上で保持します。変数は、ス
トアド・プロシージャの出力引数(out パラメータ)の値受け取り等に使用できま
す。
置換文字列は、実行時に指定文字列(定義値)へ置き換えるものです。KeySQLは、
置換文字列指定の箇所を定義値で置き換えることで、SQL文を作成した後にデー
タベース・サーバーへ渡します。置換文字列は単なる文字列の置き換えなので、
句や節(SELECT文のWHERE句等)全体を実行時に置き換えるようなことが可能で
す。また、変数のように値が返るようなことはありません。
8-6
KeySQL for MS Windows ユーザーズ・ガイド
8.2.2
変数と置換文字列の使い分け
変数は注意して使用してください。次のような場合は、変数ではなく置換文字列
を使用してください。
SQL文: SELECT 電話番号 FROM 顧客マスタ WHERE 顧客名=<変数・置換文字列>
このような場合は、<変数・置換文字列>の箇所へはデータベース・サーバーから
値を返させる必要はないので、置換文字列を使用してください。変数を使用する
場合は、ストアドファンクション等、値を返させる必要がある場合に限ってくだ
さい。
8.2.3
SQL文中の変数指定
SQL文中の変数指定は、SQL文中の変数にしたい値を ":変数名" の形式(半角 コ
ロン「:」 の後に変数名を続ける)で記述することで行います。変数に置き換え
られるのは、単一の値が使用される箇所だけです。数字や引用符で囲まれた文字
列等の単一の値が置かれる場所のみ、変数指定を行うことができます(SQL文での
予約語や、節・句全体等を変数にすることはできません)。
例:SELECT 電話番号 FROM 顧客マスタ WHERE 顧客名 = :変数名
8.2.4
8
SQL文中の置換文字列指定
SQL文中の置換文字列指定は、SQL文中の置き換えたい箇所を "{置換文字列名}"
の形式(半角の "{" と "}" で置換文字列名を囲みます)で記述します。置換文字
列は入れ子構造にしても構いません。ただし、同一の置換文字列が入れ子構造に
ならにようにして下さい(無限に置き換え処理が行われます)。置換文字列の定義
値が変数指定を含む文字列であっても構いません。また、ひとつのSQL文中に複
数の置換文字列が使われても構いません。
例:SELECT 電話番号 FROM 顧客マスタ WHERE 顧客名 = {置換文字列名}
8.2.5 変数・置換文字列の設定
変数・置換文字列の定義や設定は次の方法で行います。
(1)ダイレクトSQLの変数設定画面、または置換文字列設定画面で行う。
(2)Bind関数またはDefMacro関数の呼び出しにより行う。
(3)テキスト・ファイルに定義内容を記述しておいた上で、Load関数の呼び出し
により行う。
操作方法や呼出方法は、それぞれの説明の項を参照して下さい。
KeySQL for MS Windows ユーザーズ・ガイド
8-7
8.2.6
変数・置換文字列の設定値の保存と読み込み
変数・置換文字列の設定値の保存と読み込みは、次の方法で行います。
(1)ダイレクトSQLの変数設定画面または置換文字列設定画面で行う。
(2)Load関数またはSave関数の呼び出しにより行う。
変数・置換文字列の設定値保存ファイルは通常のテキスト・ファイルなので、テ
キスト・エディタを使用して作成することもできます。その際の書式について
は、保存機能を使用して作成したファイルの内容を参考にして下さい。
8.2.7
変数設定
変数の参照・登録・変更画面は、ダイレクトSQLウィンドウのをクリックすると
表示されます。
図8-4 変数の参照・登録・変更画面
画面が表示される時には、すでに設定されている変数名の一覧が画面下部に表示
されます。
a)一覧に表示されている変数名をクリックすると、内容欄に現在の設定値が表
示されます。
b)名前欄に変数名、内容欄に設定値をそれぞれ入力して登録ボタンをクリック
すると、変数の設定が行えます。この時に既定義の変数名を指定(選択)した
場合は、値の変更になります。
c)変数を選択してから削除ボタンをクリックすると、その変数は削除されま
す。
d)全削除ボタンをクリックすると、すべての変数の設定が削除されます。
8-8
KeySQL for MS Windows ユーザーズ・ガイド
e)保存ボタンをクリックするとファイル名の入力が要求され、指定したファイ
ルにすべての変数の設定が保存されます。保存機能により作成されたファイ
ルは、読込ボタンをクリックするとロードできます。
f)読込ボタンをクリックするとファイル名の入力が要求され、指定したファイ
ルに保存されている変数の設定がロードされます。この時、読み込み前に設
定されている変数と同じ名前の変数設定が指定ファイルに存在した場合は、
ファイル中の設定値で上書きされます。
図8-5 変数設定ファイル保存・読み込み画面
g)設定ボタンをクリックすると、変数設定の自動読み込み・自動保存の設定画
面が表示されます。この画面で設定を行うことにより、KeySQLの起動時と終
了時に、変数の保存と読み込みを自動的に行うことができます。
図8-6 変数関連の設定
自動読み込み・保存の各オプションと保存ファイル名を、この画面で設定して下
さい。
・ 特に変数を使用しない場合は、両オプションのチェックをはずしておきま
す。この場合はファイル名の設定も必要ありません。KeySQLインストール時
の設定は、この状態です。
・ 常に前回ログアウトした状態でKeySQLを使用したい場合は、両オプションを
オンにして保存ファイル名を設定してください。
・ 常に前回ログインした時と同じ設定でKeySQLを使用したい場合は、読み込み
オプションのみオンにしておき、保存ファイル名を設定しておきます。
KeySQL for MS Windows ユーザーズ・ガイド
8-9
8
h)「挿入ボタン」を押下すると、選択されている変数名がダイレクトSQL入力
ウィンドウのカーソル位置に挿入されます。
i)「定義値を挿入」を押下すると、選択されている変数の内容がダイレクトSQL
入力ウィンドウのカーソル位置に挿入されます。
j)「閉じる」をクリックすると、この画面を閉じます。
この画面では次のショートカットキーが使用できます。
8-10
<TAB>
:入力フォーカスを移動します。
<SHIFT>+<TAB>
:入力フォーカスを移動します(反対回り)。
<ESC>
:「閉じる」のクリックと同じです。
KeySQL for MS Windows ユーザーズ・ガイド
8.2.8 置換文字列設定
置換文字列の参照・登録・変更画面は、ダイレクトSQLウィンドウの「置換」を
クリックすると表示されます。
図8-7 置換文字列の参照・登録・変更画面
画面が表示される時には、すでに設定されている置換文字列名の一覧が画面下部
に表示されます。
a)一覧に表示されている置換文字列名をクリックすると、内容欄に現在の設定
値が表示されます。
b)名前欄に置換文字列名、内容欄に設定値をそれぞれ入力して登録ボタンをク
リックすると、置換文字列の設定が行えます。この時に既定義の置換文字列
名を指定(選択)した場合は、値の変更になります。
c)置換文字列は変数ではありません。置換文字列指定 - {置換文字列名} - を
置き換えるだけです。文字列型の値を設定するような場合は、引用符で囲ん
だ値を設定する等が必要になります。
d)置換文字列の値は、複数行に渡るものでも構いません。
e)SQL文に埋めこまれる場合(置換される場合)は、空白文字・タブ文字・改行文
字・復改文字がすべて空白文字とみなされた上で、連続する空白文字をひと
つの空白文字に置き換えるトリミング処理が行われます。よって、行末と次
行の先頭は、必ず空白文字が挿入されます(トリミング処理は引用符で囲まれ
た範囲には適用されません)。
f)置換文字列を選択してから削除ボタンをクリックすると、その置換文字列は
削除されます。
g)全削除ボタンをクリックすると、すべての置換文字列の設定が削除されま
す。
h)保存ボタンをクリックするとファイル名の入力が要求され、指定したファイ
ルにすべての置換文字列の設定が保存されます。保存機能により作成された
ファイルは、読込ボタンをクリックするとロードできます。
KeySQL for MS Windows ユーザーズ・ガイド
8-11
8
i)読込ボタンをクリックするとファイル名の入力が要求され、指定したファイ
ルに保存されている置換文字列の設定がロードされます。この時、読み込み
前に設定されている置換文字列と同じ名前の置換文字列設定が指定ファイル
に存在した場合は、ファイル中の設定値で上書きされます。
図8-8 置換文字列ファイルの保存・読み込み画面
j)設定ボタンをクリックすると、置換文字列設定の自動読み込み・自動保存の
設定画面が表示されます。この画面で設定を行うことにより、KeySQLの起動
時と終了時に、置換文字列の保存と読み込みを自動的に行うことができま
す。
図8-9
置換文字列関連の設定画面
自動読み込み・保存の各オプションと保存ファイル名をこの画面で設定して下さ
い。
・ 特に置換文字列を使用しない場合は、両オプションのチェックをはずしてお
きます。この場合はファイル名の設定も必要ありません。KeySQLインストー
ル時の設定は、この状態です。
・ 常に前回ログアウトした状態でKeySQLを使用したい場合は、両オプションを
オンにして保存ファイル名を設定してください。
・ 常に前回ログインした時と同じ設定でKeySQLを使用したい場合は、読み込み
オプションのみオンにしておき、保存ファイル名を設定しておきます。
8-12
KeySQL for MS Windows ユーザーズ・ガイド
k)「挿入ボタン」を押下すると、選択されている置換文字列指定がダイレクト
SQL入力ウィンドウのカーソル位置に挿入されます。
l)「定義値を挿入」を押下すると、選択されている置換文字列指定の設定値が
ダイレクトSQL入力ウィンドウのカーソル位置に挿入されます。
m)「閉じる」をクリックすると、この画面を閉じます。
この画面では次のショートカットキーが使用できます。
<TAB>
:入力フォーカスを移動します。
<SHIFT>+<TAB>
:入力フォーカスを移動します(反対回り)。
<ESC>
:「閉じる」のクリックと同じです。
8
KeySQL for MS Windows ユーザーズ・ガイド
8-13
8.2.9
実行SQL文の履歴画面
ダイレクトSQLウィンドウから「履歴」ボタンをクリックすると「実行SQL文の履
歴」画面が表示されます。ここでは、ログイン後に実行されたSQLの履歴および
結果の確認が可能です。履歴文がウィンドウ下部に表示されますので、クリック
して選択してください。
図8-10 実行SQL文の履歴画面 実行結果
:選択したSQL文の実行結果確認画面を表示します。
挿入
:選択したSQL文をダイレクトSQLウィンドウに挿入します。
再実行
:選択したSQL文を実行します。
閉じる
:実行SQL文の履歴画面を終了します。
図8-11 実行SQL文の結果画面 8-14
KeySQL for MS Windows ユーザーズ・ガイド
8.2.10
マクロジェネレート画面
ダイレクトSQLウィンドウ画面から「マクロ生成」ボタンをクリックすると「マ
クロジェネレート(選択)」画面が表示されます。ここでは、実行されたSQL文を
選択し、マクロ・ファイルを生成することができます。
8
図8-12 マクロジェネレート(選択)画面
実行結果
:選択したSQL文の実行結果確認画面を表示します。
マクロ作成
:選択したSQL文をマクロファイルに出力します。
閉じる
:マクロジェネレート(選択)画面を終了します。
まず、マクロを生成するSQL文を、ウィンドウ下部表示リストからクリックして
選択します。ウィンドウ上部に選択したSQL文が挿入されますので、「マクロ生
成」をクリックしてください。「マクロジェネレート」画面が表示されます。こ
こで詳細事項を設定します。
尚、ここで生成されるマクロ・ファイルは各アプリケーション用のマクロ・ファ
イルになります。KeySQL用の「.MAC」ファイルは生成されません。
KeySQL for MS Windows ユーザーズ・ガイド
8-15
第9章
ストアド・プロシージャ
実行機能
ストアド・プロシージャ、ファンクション実行機能について説明し
ます。
次の内容について解説します。
・ ストアド・プロシージャ、ファンクション実行
9
・ ストアド・プロシージャ、ファンクション引数設定
・ ストアド・プロシージャ、ファンクション定義参照 KeySQL for MS Windows ユーザーズ・ガイド
9-1
9.1 ストアド・プロシージャ、ファンクション画面
ダイレクトSQLウィンドウの「ストアド・プロシージャ」ボタンをクリックすると
次の画面が表示され、その時点でデータベースサーバに登録してあるストアド・
プロシージャとストアド・ファンクションが一覧として表示されます。
図9-1 ストアド・プロシージャ、ファンクション画面
ストアド・プロシージャ(ストアド・ファンクションを含む、以下同じ)の実行方
法は次のとおりです。
1)一覧表示されているストアド・プロシージャをマウスクリックで選択しす。
2)引数が必要なプロシージャの場合、「引数設定」で設定します。
3)「実行」をクリックして実行します。
この画面で使用できるツールボタンの機能は次の通りです。
「閉じる」ボタン
:この画面を終了します。ストアド・プロシージャの実
行は行われません。
「設定」ボタン
:ストアド・プロシージャが定義されているオブジェク
トテーブルの名前やソーステキストを持つテーブルの
名前を設定する画面を表示します。通常はインストー
ル時の設定から変更する必要はありません。
9-2
KeySQL for MS Windows ユーザーズ・ガイド
「取り直し」ボタン
:ストアド・プロシージャの一覧を取り直します。設定
画面でテーブル変更を行った場合等は、このボタンを
クリックすることでストアド・プロシージャの取り直
しを行えます。
「参照」ボタン
:選択しているストアド・プロシージャ(一覧表示中で反
転表示されているもの)の定義内容(ソーステキスト)を
表示します。
「引数設定」ボタン
:引数設定画面を表示します。操作方法は別項を参照し
て下さい。
「挿入」ボタン
:選択しているストアド・プロシージャを実行するSQL文
を「SQL文入力画面」に表示して、この画面を終了しま
す。実行はしません。
「実行」ボタン
:選択しているストアド・プロシージャを実行して、こ
の画面を終了します。
9
KeySQL for MS Windows ユーザーズ・ガイド
9-3
9.2 引数の設定画面
ストアド・プロシージャ画面で実行するプロシージャを選択した後に「引数設
定」ボタンをクリックすると、引数設定画面が表示されます。
この画面では、実行するストアド・プロシージャの引数の設定を行います。
図9-2
引数設定画面
「KeySQL」はこの画面を表示する時に、引数に関する情報をデータベース・サー
バーから取得した上で、引数の名前、タイプ等を表示します。
操作方法は次の通りです。
1)画面下部の引数一覧の中から、マウスクリックで引数を選びます。
2)画面上部の引数値入力欄に値を入力します。この時に、定義済の変数や置換文
字列を使用する場合は、「変数の参照・登録・変更」や「置換文字列の参
照・登録・変更入」画面を利用できます。
3)全部の引数の値を設定したら「OK」をクリックします。
引数の設定の際の注意点は、次の通りです。
・ 定数(文字リテラルや数リテラル等)を指定することができるのは、入力引数
に対してのみです。出力または入出力引数に対しては、変数を指定してくだ
さい。
・ 定数を指定する場合は、データ型によっては引用符で囲むことが必要になり
ます。
・ 入力または入出力引数に対して変数を指定する場合は、既定義の変数しか指
定できません。出力引数に対しては、既定義、未定義どちらの変数も指定で
きます。
・ 引数の値として、置換文字列も指定できます。
9-4
KeySQL for MS Windows ユーザーズ・ガイド
この画面で使用できるツールボタンの機能は次の通りです。
「キャンセル」ボタン
:この画面を終了します。引数の設定チェックは行われ
ません。
「変数」ボタン
:「変数の参照・登録・変更」画面を表示します。この
画面は「SQL文入力」画面にある「変数の挿入」ボタン
で表示されるものと同じです。操作方法等は別項を参
照して下さい。
「置換」ボタン
:「置換文字列の参照・登録・変更」画面を表示しま
す。この画面は「SQL文入力」画面にある「置換文字列
の挿入」ボタンで表示されるものと同じです。操作方
法は別項を参照して下さい。
「OK」ボタン
:入力された引数の妥当性をチェックします。
「KeySQL」では厳密なチェックは行いません。変数を
使用した場合の妥当性と、未入力引数の有無のみが
チェックされます。データ型等に対する整合性の
チェック等は、実行時にデータベース・サーバーによ
りチェックされます。
この画面では、次のショートカットキーが使用できます。
<ESC>
: 「キャンセル」ボタンと同じです。
<TAB>
: 入力フォーカスを移動します。
KeySQL for MS Windows ユーザーズ・ガイド
9
9-5
9.3
定義参照画面
引数設定画面で、選択したストアド・プロシージャの定義内容を確認することが
できます。次の手順に従ってください。
(1)ストアド・プロシージャ名表示画面で、表示するプロシージャまたはファン
クション名を選択します。
(2)「参照」ボタンをクリックすると、定義内容画面が表示されます。
図9-3 定義内容画面
9-6
KeySQL for MS Windows ユーザーズ・ガイド
9.4
ストアド・プロシージャ設定画面
ストアド・プロシージャを取得するテーブルの設定を行います。「設定」をク
リックすると設定画面が表示されます。
図9-4 取得テーブルの設定画面
プロシージャ名取得テーブル
:ALL_OBJECTS、USER_OBJECTSの指定を行います。
ソーステキスト取得テーブル
:ALL_SOURCE、USER_SOURCEの指定を行います。
9
種類の指定
:両方、PROCEDURE、FUNCTIONの指定を行います。
条件の指定
:取得するプロシージャ等の条件を指定します。
KeySQL for MS Windows ユーザーズ・ガイド
9-7
ALL_OBJECTSはすべてのプロシージャを、USER_OBJECTSはログインしたユーザーが
取得可能なプロシージャを意味します。
[例]
Aで始まるプロシージャまたはファンクションのみを取得する場合
(1)ストアド・プロシージャ設定画面の条件の指定に、[OBJECT_NAME LIKE 'A%']
を入力します。
図9-5 取得テーブルの設定画面(例)
(2)[OK]ボタンをクリックしストアド・プロシージャ設定画面を終了します。
(3)ストアド・プロシージャ、ファンクション設定画面で、ボタンをクリックしま
す。
9-8
KeySQL for MS Windows ユーザーズ・ガイド
第10章
「KeySQL
」マクロ機能
KeySQL」マクロ機能
「K e y S Q L 」は、ユーザーがマクロ・プログラム等を作成する事
なく定型業務を行うための、強力なマクロ機能をサポートして
います。日常定型業務を行う時にとても有効な機能の一つで
す。
次の強力な5種類の機能をサポートしています。
・
「K e y S Q L 」マクロ自動作成機能
・
・
「K e y S Q L 」マクロ実行・読み込み機能
「K e y S Q L 」マクロ実行時の条件問い合わせ機能
・
各種アプリケーションに対応したマクロプログラム
自動生成機能
・
ユーザーによるカスタマイズ機能
また、「K e y S Q L 」で設定できる各種設定についても合わせて自
動作成を行うので、作業状態設定が異なるマクロを、随時、簡
単にかつ処理ごとに、作成する事ができます。
この章では、「K e y S Q L 」マクロファイル作成機能、実行機能等
を中心に「K e y S Q L 」マクロ機能について解説します。
KeySQL for MS Windows ユーザーズ・ガイド
10-1
10
10.1 マクロファイル作成機能
「KeySQL」のマクロファイル作成機能は、ユーザーが行わなければならないマク
ロ・コーディング(SQL文の各アプリケーション・マクロへの組み込み)の軽減を目
的に開発されたものです。
「KeySQL」マクロ機能について
[「KeySQL」マクロ自動作成機能]
「KeySQL」には、画面操作によりSQL文を意識せずにデータベース・アクセスを可
能にしたメインウィンドウと、SQL文を直接入力する事でデータベース・アクセス
を可能にしたダイレクトSQLウィンドウがあります。
マクロ・ジェネレート機能では、各々の画面からマクロを作成する事ができ、
ユーザーは導入 後すぐに、定型業務を行う事ができます。また、メンテナンスも
容易です。
[「KeySQL」マクロ実行・読み込み機能]
「KeySQL」マクロ作成機能で作成したマクロプログラムは、メインウィン
ドウにおけるマウスを使用した画面操作から、実行/読み出しが可能で
す。より簡単に処理することができます。
[マクロ実行時の条件問い合わせ機能]
「KeySQL」マクロ作成時に「検索条件問い合わせ設定」を行う事で、「マ
クロ実行」または「マクロ読み込み」時に条件の変更を行う事が簡単にで
きます。この機能を使用する事で、より汎用的な定型業務が行えます。
[エクセルマクロ・プログラム自動生成機能]
「KeySQL」は、フロントエンドアプリケーションとして「Microsoft
Excel」をサポートしており、エクセルで実行可能なマクロプログラムを
作成する事ができますので、エクセルからの検索処理も容易です。
エクセルマクロには2種類あります。
1)通常のエクセルマクロは、エクセルと「KeySQL」でコマンドのやり取り
を行ってデータを貼り付けます。
2)ダイレクトコールを使用しますと「KeySQL」とはコマンドのやり取りを
行わず、「KeySQL」が提供するDLLとコマンドのやり取りを行ってデー
タを貼り付けます(貼り付けスピードが上がります)。
[ユーザーでのカスタマイズ機能]
「KeySQL」は、データベースをアクセスする各種ファンクションを用意し
ています。検索、更新、追加、削除等の行える「KeySQL」ファンクション
と、SQL文ダイレクトにデータベースへアクセスする事のできる
「Direct」ファンクションがあります。
各々のファンクションは、各種のフロントエンド・アプリケーションから
「KeySQL」を通じてデータベースにアクセスする事ができるので、様々な
ユーザー・アプリケーション・インタフェースとして利用できます。
10-2
KeySQL for MS Windows ユーザーズ・ガイド
「KeySQL」マクロファイル作成機能としては、次の2種類のマクロ作成方法があ
ります。
1.メインウインドウで設定された検索項目、検索条件からマクロ作成を行う。
具体的には、メニューバーから「ファイル(F)」→「マクロファイルに保
存(S)」を実行すると、KeySQLマクロに使用する「.MAC」マクロファイル
およびアプリケーションボックスに定義されていアプリケーション用のマ
クロファイルの2つが作成されます。
2.ダイレクトSQLウインドウで実行されたSQL文からマクロ作成を行う。
具体的には、ダイレクトSQLウインドウ上の「マクロ生成」ボタンをク
リックします。詳細は「第8章ダイレクトSQL入力機能」をご覧下さい。
「KeySQL」マクロファイル作成機能を使用して「KeySQL」マクロ作成を行った場
合、アプリケーションに応じて、実行可能なマクロファイルが次のように作成さ
れます。
「KeySQL」マクロ・ファイル名
:拡張子.macのファイルが作成されます。
エクセルマクロ・ファイル名
:拡張子.vbaのファイルが作成されます。
「KeySQLマクロファイル作成機能で作成されるデフォルト・マクロ・ファイル
名」
「KeySQL」マクロ・ファイル名
:sample.mac
エクセルマクロ・ファイル名
:sample.vba
10
次項でマクロファイル保存画面の操作について説明します。
KeySQL for MS Windows ユーザーズ・ガイド
10-3
10.1.1 メインウィンドウ・マクロ作成
メインウインドウで作成した検索条件をマクロファイルに保存する事で、マクロ
のジェネレートを行うことができます。この項では、メインウィンドウ上でのマ
クロファイル作成の操作方法について、解説します。
図10-1 メインウィンドウ
(1)メインウィンドウのメニューバー内のファイル(F)をクリックしてマクロファ
イルに保存(S)をクリックすると「マクロファイルに保存」画面が表示されま
す。
図10-2 マクロファイルに保存画面
(2)「マクロファイルに保存」画面で、[作成方法・オプション・ファイル名
(KeySQL)]を設定し「作成」ボタンをクリックします。
10-4
KeySQL for MS Windows ユーザーズ・ガイド
10.1.2 「マクロファイルに保存」画面
「マクロファイルに保存」画面の各種設定について説明します。
図10-3「マクロファイルに保存」画面
10
[各種設定項目]
KeySQLマクロファイル名
:「KeySQL」のマクロファイルの名前を指定し
ます。必ず、 拡張子を.MACとしてください。
アプリケーションマクロファイル名
: 対象アプリケーションのマクロプログラムを保存
するファイル名を指定します。作成方法で「ク
リップボードに出力」を選んだ場合は表示され
ません。
KeySQL for MS Windows ユーザーズ・ガイド
10-5
作成方法:
「テキストファイルを作成」:エクセル用のマクロプログラム(以下、マクロ
プログラム)の出力先を「ファイル名」欄で指
定します。
「クリップボードに出力」 :作成したマクロプログラムをクリップボードへ
書き出しますのでエクセルで貼り付けを行って
下さい。
「ダイレクトコールを使用」:ダイレクトコールを使用したエクセルマクロを
作成します。
「ダイレクトコール宣言部を出力」
:ダイナミック リンク ライブラリ(DLL)の
外部プロシージャへの参照を宣言します。
「エグゼキュートモードで作成」
:マクロプログラムで「KeySQL」のマクロファイル
を使用しなしモードで作成します。
「更新系マクロを作成」
:更新用のマクロを作成します。
「KeySQL」のマクロファイル(拡張子 .MAC)は必ずファイルに作成されます。
オプション:
「KeySQL」マクロファイルとマクロプログラム作成のオプションです。それぞれ
のオプションをチェック(有効に)した場合の結果は次の通りです。
オーナー名を使用する
:マクロファイルに使用される項目名に、オーナー
名を使用します。
自動接続を行う
:エクセルのマクロファイルに、データベース・
サーバーへの接続(ログイン)処理が加わります。
実行後ログアウトする
:エクセルのマクロファイルに、「KeySQL」のログ
アウト処理を加え ます。
実行後KeySQLを終了する
:エクセルのマクロファイルに、「KeySQL」の終了
処理(exit関数の呼び出し)を加えます。
エラー時にメッセージを表示する
:エラー時にエラーメッセージを表示する処理を、
マクロプログラムに加えます。
列幅を自動調整する
:貼り付けた選択リストの列幅調整処理を、マクロ
プログラムに加えます。
書式を自動調整する
:貼り付けた選択リストの書式設定処理を、マクロ
プログラムに加えます。
サブルーチン化を行う
:処理単位にサブルーチン化したマクロプログラム
を作成します。
「KeySQL」の設定をチェックする
:「KeySQL」の作業状態の設定値を設定する処理を
マクロプログラムに加えます。
「KeySQL」の作業状態の各設定値は、マクロファイル(.MAC)の中に保存さ
れますが、ダイレクトSQLの各設定値は保存されません。このオプションを
有効にすると、マクロジェネレート時の作業状態へ設定する処理が、マク
ロプログラムに加えられます。また、このオプションを有効にすると詳細
な設定項目を入力できるようになりますので、必要な指定を行って下さ
い。
10-6
KeySQL for MS Windows ユーザーズ・ガイド
データシート名と貼り付け位置
:検索した選択リストの貼り付け先を指定します。
デフォルトでは、現在設定してある貼り付け位置
となります。
「KeySQL」のマクロファイル作成時(.MAC 作成時)は、「KeySQL」のマク
ロファイルに現在設定されている貼り付け位置のデータシート名とセル位
置が保存されます。「KeySQL」は検索後の更新処理時に、指定された更新
行のデータ取得の開始位置として、保存されている貼り付け位置を使用し
ます(マクロファイル作成の時に設定されているシート・セル位置に貼り
付けられていると仮定します)。「KeySQL」のマクロファイルに保存され
る貼り付け位置と異なる場所へ貼り付けを行った場合は、「KeySQL」を使
用した更新処理は行えませんので、注意して下さい。ただし、「KeySQL」
の検索機能やダイレクトSQLの機能は問題なく使用できます。
マクロ名
:作成するマクロプログラムのマクロ名です。必ず
指定して下さい。
マクロシート名
:ジェネレートしたマクロプログラムを置くマクロ
シートの名前を指定します。
セル形式
:マクロプログラム中で使用するセル形式を「A1
形式」で設定します。
「KeySQL」設定チェックのオプション
:作成オプションで「「KeySQL」の設定をチェック
する」を有効にした時に、詳細な指定を行う項目
です。設定値の種類や保存方法を選択します。
10
図10-4 KeySQL設定オプション画面
作成ボタン
プレビューアボタン
キャンセルボタン
:指定された方法やオプションで、マクロプログラ
ムを作成します。
:作成されるマクロプログラムを表示します。入力
値のチェックや、作成オプションの指定によるマ
クロプログラムの内容等をチェックするのに使用
して下さい。
:保存画面を終了します。
KeySQL for MS Windows ユーザーズ・ガイド
10-7
10.2
条件問い合わせ機能の設定
「KeySQL」メインウィンドウにおける「KeySQL」マクロ作成時に、「検索条件問
い合わせ設定」を行う事ができます。検索条件の変更は、「マクロ実行」または
「マクロ読み込み」時に簡単に行えます。
この項では、「検索条件問い合わせ設定」について解説します。
(1)「KeySQL」メインウィンドウで検索項目、検索条件を設定します。
(2)「検索条件問い合わせ設定」を行う条件のコンディション行番号をクリックし
反転表示させます。
(3)
ボタンをクリックします。
図10-5 条件問い合わせ設定画面
(4)設定された検索条件の先頭に「?」が表示されます。
これで設定は終了です。複数の設定をするときは、(2)∼(4)を繰り返し行いま
す。
設定後マクロを実行すると、下記の条件問い合わせ画面が自動表示されます。こ
の画面上で条件入力が可能になります。
図10-6 条件問い合わせ設定画面
条件設定後、
10-8
を押下すると、マクロ実行が継続されます。
KeySQL for MS Windows ユーザーズ・ガイド
10.3 マクロの実行と読み込み
「KeySQL」では、検索処理をマクロ化した「KeySQL マクロ・ファイル」(拡張子
.MAC)を使用して、既に設定された検索項目や検索条件を、「メインウインドウ」
から実行したり読み込んだりできますので、定型業務の処理を簡単にかつスピー
ディに行えます。
この項では、「KeySQL マクロ」の実行と読み込みについて解説します。
10.3.1
メインウインドウでの「KeySQL マクロ」実行
「KeySQL マクロ」実行機能について解説します。
[操作方法]
(1) 「KeySQL」のログインを行います。
(2) メインウインドウが表示されたら、メニューバー内[ファイル(F)]をクリック
し、[マクロの実行(M)]を選択します。
10
図10-7 「KeySQL マクロ」実行指定
(3) マクロ実行画面が表示されます。
この画面でマクロファイルのディレクトリと「KeySQL マクロ・ファイル」
(拡張子.MAC)を指定します。
(4) 実行ボタンをクリックすると選択した「KeySQL マクロ・ファイル」(拡張子
.MAC)の内容が実行されます。
キャンセルボタンをクリックすると、マクロ実行画面を終了します。
KeySQL for MS Windows ユーザーズ・ガイド
10-9
図10-8 「KeySQL マクロ実行」ファイル選択
10.3.2
メインウインドウでの「KeySQL マクロ」読み込み
マクロ・ジェネレータで作成した「KeySQL マクロ・ファイル」(拡張子.MAC)を使
用して「KeySQL マクロ」読み込み機能について解説します。
[操作方法]
(1) 「KeySQL」のログインを行います。
(2) メイン画面が表示されたら、メニューバー内[ファイル(F)]をクリックし、
[開く(O)]をクリックします。
(3) マクロ読み込み画面が表示されます。この画面でマクロファイルのディレク
トリと「KeySQL マクロ・ファイル」(拡張子.MAC)を指定します。
図10-9 「KeySQL マクロ読み込み」ファイル選択画面
(4) 「開く」ボタンをクリックすると選択した「KeySQL マクロ・ファイル」の内
容がメイン画面に読み込まれます。
10-10
KeySQL for MS Windows ユーザーズ・ガイド
第11章 「KeySQL
」マクロ関数
KeySQL」マクロ関数
この章では、「K e y S Q L 」マクロ関数について解説します。
11
KeySQL for MS Windows ユーザーズ・ガイド
11-1
11.1 「KeySQL」マクロ関数
この項では、「KeySQL」がサポートしているマクロ関数の書式と機能について解
説します。
マクロ関数には、次のものがあります
□ SetupD
作業状態の設定
□ Connect サーバー名、ログイン・ユーザー名、 パスワードデータベース名
の設定 □
Execfile マクロファイルの実行
□ Select
表名・項目名・式の設定
□ Condition 検索条件,列順序,グループ項目,グループ化の条件設定
□ From
from句の設定
□ Execute 出力先(シート名等)と出力件数の設定
□ Fetch
データ検索
□ Fetchend データ検索の終了
□ Update
データの更新
□ Delete
データの削除
□ Insert
データの追加
□ KeyExecSql
□ Bind
任意のSQL文の実行
変数の設定
□ DefMacro 置換文字列の設定
□ Load
各種ファイルの読み込み
□ Save
各種ファイルの保存
□ Logout
データベースからのログアウト指示
□ Exit
「KeySQL」の終了指示
□ Put
複数行にわたるマクロ文の指定
□ Sheet
MDI画面の選択
□ Clear
シートの初期化
■ KeySQLRequest DDEREQUESTのサポート
11-2
KeySQL for MS Windows ユーザーズ・ガイド
□マクロ関数名
[書式]
「KeySQL」マクロ・ファイルに記述される書式です。
例)
記述例
[機能]
機能の説明
■ダイレクトコール関数名
[書式]
エクセルマクロに記述される書式です。
例)
記述例
上記の機能を「Excel」マクロからダイレクトコールで実現するマクロ関数名で
す。
注意)
使用上の注意点です。
11
KeySQL for MS Windows ユーザーズ・ガイド
11-3
□SetupD
[書式]
SetupD("設定値");
例)
SetupD("Option.ShowCountAtSelect = Off")
[機能]
「KeySQL」の各種設定を行います。
設定値
「KeySQL」の作業状態パラメータと設定値を半角の「=」でつないだ文字列を指定
します。(1回の呼び出しで設定できるパラメータはひとつです。)「KeySQL」の
起動ディレクトリにある「KEYSQL.INI」にあるパラメータは、すべて指定できま
す。起動時と設定を変える場合に使用します。
■KeySQLSetupD
[書式]
KeySQLSetupD("設定値")
例)
Status = KeySQLSetupD("Option.ShowCountAtSelect = Off")
11-4
KeySQL for MS Windows ユーザーズ・ガイド
□Connect
[書式]
Connect("ホスト名","ログイン名","パスワード",(""),(""),("テーブルグループ
名"))
例)
Oracleにてホスト名 "tnik"、ユーザー名 "Key"、パスワード "SQL"への接続例
Connect ("tnik","Key","SQL","","","全テーブル")
[機能]
サーバーにコネクトした後に、データベースにログインします。
ログイン名
パスワード
ホスト名
テーブルグループ名
:
:
:
:
ユーザー名称
パスワード
サーバーのホスト名称
テーブルグループの名称を指定します。省略しない
場合は、必ず第4、第5引数をヌルでしていします
■KeySQLConnect
[書式]
KeySQLConnect("ホスト名","ログイン名","パスワード","","","テーブルグルー
プ名")
例)
Oracleにてホスト名 "tnik"、ユーザー名 "Key"、パスワード "SQL"への接続例
Status = KeySQLConnect("tnik","Key","SQL","","","全テーブル")
KeySQL for MS Windows ユーザーズ・ガイド
11-5
11
□Execfile
[書式]
Execfile ("ファイル名")
例)
Execfile ("sample.mac")
[機能]
「KeySQL」マクロファイルを実行します。
■KeySQLExecfile
[書式]
KeySQLExecfile ("ファイル名")
例)
Status = KeySQLExecfile ("sample.mac")
11-6
KeySQL for MS Windows ユーザーズ・ガイド
□Select
[書式]
Select (列番号,"式",("表別名"),("項目別名"),(貼付位置),(更新対象),(更新条
件))
例)
Select (1,"MAX(DEPT.DEPTNO)","DEPTNO","MAX値")
1番目に表DEPT 項目DEPTNO の値が選択され、表名のセル位置に"DEPTNO",項目名
のセル位置に"MAX値"が表示されます。
[機能]
選択する項目の指定を行います。
列番号
式
表別名
項目別名
貼付位置
更新対象
更新条件
: 出力先の列番号
: データベースで指定できる式です。
: 通常表名が貼付られるセルの位置に貼り付ける別名を指定し
ます。(省略可)
: 通常項目名が貼付られるセルの位置に貼り付ける別名を指定し
ます。(省略可)
: Microsoft Word の定型表に貼り付ける場合に指定します。
: 更新処理時にFALSE、(省略)であれば更新対象の項目として
処理します。TRUEの場合は更新対象の項目として処理しませ
ん。
:
更新処理時にFALSE(省略)であれば更新条件に検索データを
使用します。TRUEの場合は更新条件に検索データを使用しませ
ん。
例)
表名.項目名
表名.項目名 * 10
関数(表名.項目名)
[DEPT.DEPTNO]
[DEPT.DEPTNO * 10]
[count(DEPT.DEPTNO)]
■KeySQLSelect
[書式]
KeySQLSelect (列番号,"式",("表別名"),("項目別名"),(貼付位置),(更新対象),
(更新条件))
例)
Status = KeySQLSelect (1,"MAX(DEPT.DEPTNO)","DEPTNO","MAX値")
KeySQL for MS Windows ユーザーズ・ガイド
11-7
11
□Condition
[書式]
Condition (種類,"条件式")
例)
Condition (w,"A.B = C.B AND A.D>=10")
[機能]
検索条件の指定を行います。「KeySQL」の条件設定画面ごとに種類が指定され、
その内容が条件式に表示されています。
種類 : 検索条件の種類を指定します。
W:WHERE句
O:ORDER BY句
G:GROUP BY句
H:GROUP BY HAVING 句
J:表の結合
U:ユニオン(集合演算子)句
補足)
1)WHERE句
条件式:検索条件を組み合わせて論理条件式を作成します。
検索条件:=,!=,<,>,<=,>=が指定できます。
BETWEEN、LIKE、IS NULL、IN、副問い合わせ等も使用できます。
論理条件式:検索条件をAND、ORまたはNOTで連結します。
括弧(、)の使用は自由です。
2)ORDER BY句
条件式:検索結果の表示順序(昇順/降順)を指定します。NULL値は高い順となり
ます。また、DESCを指定すると降順に、省略時は昇順になります。
例 condition (O,"DEPT.DEPTNAME")
3)GROUP BY句
条件式:グループ分けを行う項目名が指定されます。
例
condition (G,"DEPT.DEPTNO")
11-8
KeySQL for MS Windows ユーザーズ・ガイド
4)GROUP BY HAVING句
条件式:グループ分けを行う条件が設定されます。
例
condition (H,"min(EMP.SAL) < 1000")
5)表の結合
条件式:複数の表を結合する条件が指定されます。
例
condition (J,"DEPT.DEPTNO = EMP.DEPTNO")
6)ユニオン句
条件式:ユニオンを指定した検索を行う場合に指定されます。
■KeySQLCondition
[書式]
KeySQLCondition (種類,"条件式")
例)
11
Status = KeySQLCondition (w,"A.B = C.B AND A.D>=10")
KeySQL for MS Windows ユーザーズ・ガイド
11-9
□From
[書式]
From ("(所有者.)表名( エイリアス)")
例)
From ("DEPT a,EMP b")
[機能]
検索の操作に対して表を指定します。エイリアスとは、表に対して別名として付
与する一時的な名前です。
■KeySQLFrom
[書式]
KeySQLFrom ("(所有者.)表名( エイリアス)")
例)
Status = KeySQLFrom ("DEPT a,EMP b")
11-10
KeySQL for MS Windows ユーザーズ・ガイド
□Execute
[書式]
Execute ("ソフトウェア","ワークシート名","行・列",件数,クリップボード・レ
コード件数)
例)
Execute ("エクセル 95","[Book]Sheet1","A1",0,0)
[機能]
データの読み込み先を指定します。
ソフトウェア :データ送信相手のアプリケーション名「Excel 97」: エクセル97
"ワークシート":ワークシートの名称
"行・列"
:データを読み込むときの先頭のセルの行番号と列番号を指定し
ます。
"A1"の場合、データは1行目の1列目から読みこまれます。
件数
:読み込みたい件数を指定します。0は、全データの読み込みを
実行します。
クリップボード・レコード件数
:クリップボードに一度に転送するレコード件数を指定しま
す。0の場合は「クリップボードに入るだけ」の指定 とな
ります。
11
■KeySQLExecute
[書式]
KeySQLExecute ("ワークシート名","行・列",件数,クリップボード・レコード件
数)
例)
Status = KeySQLExecute ("[Book]Sheet1","A1",0,0)
注意)
通常モードとは書式が異なりますので注意してください。第1引数がありませ
ん。ダイレクトモードでは、このマクロ関数が発行されると、検索ー貼付が自動
的に実行されます。つまり「Excel」マクロでフェッチーペーストを繰り返す必要
がありません。
KeySQL for MS Windows ユーザーズ・ガイド
11-11
□Fetch
[書式]
Fetch (取得件数)
例)
Fetch(0)
[機能]
検索データを、クリップボードに転送します。
取得件数
取得する選択リストの件数(行数)を指定します。省略した場合は「KeySQL」によ
り最適な取得件数が決定されますが、指定した場合は最大でも指定件数しか
フェッチしません。0(ゼロ)を指定した場合は制限なしの指定となり、取得可能
な選択リストを全件フェッチします。いずれの場合(ゼロを指定した場合の取得可
能全件数、ゼロ以外を指定した場合の指定件数、指定しなかった場合の
「KeySQL」が決定した件数)でも、実際にフェッチされる件数は、クリップボード
のサイズや最大選択件数の設定値により制限される可能性があります。
11-12
KeySQL for MS Windows ユーザーズ・ガイド
□Fetchend
[書式
Fetchend()
例)
Fetchend()
[機能]
Fetchの終了を「KeySQL」に通知します。
検索を実行した場合には、必ずこの関数を使用して検索処理を終了させて下さ
い。
11
KeySQL for MS Windows ユーザーズ・ガイド
11-13
□Update
[書式]
Update(開始行番号,終了行番号(,条件)(,トランザクション))
例)
Update(3,10,TRUE)
[機能]
検索実行後に変更したワークシートの内容に、データベースを更新します。
一行更新の時は、終了行番号は開始行番号と同じに指定します。
複数行更新の場合は、終了行番号は開始行番号より、必ず大きく指定します。
開始行番号
終了行番号
条件
:ワークシートの行番号
:ワークシートの行番号
:TRUE、省略時の時には 更新時の条件として検索条件と検索
データをすべて含ませます。
FALSEは削除時の条件として、条件タグに設定されている内容を
使用します。無検索削除処理を行う場合にFALSEとします。
トランザクション
:FALSEの時には、コミット、ロールバックをしません。
TRUE、省略時の時には、作業状態の更新オプションの設定に
従います。
[注意]
注意)
組込みマクロからの追加処理でクリップボードを使用する場合は、必ず関数実行
前に、クリップボードにワークシートのデータを転送して下さい。
■KeySQLUpdate
[書式]
KeySQLUpdate(開始行番号,終了行番号(,条件))
例)
Status = KeySQLUpdate(3,10,TRUE)
注意)
トランザクションの制御は、作業状態の更新オプションクシートの設定に従いま
す。
11-14
KeySQL for MS Windows ユーザーズ・ガイド
□Insert
[書式]
Insert(開始行番号,終了行番号)
例)
Insert(3,10)
[機能]
ワークシートの開始行から終了行までをデータベースに追加します。
一行追加の時は、終了行番号は開始行番号と同じに指定します。
複数行追加の場合は、終了行番号は開始行番号より、必ず大きく指定します。
開始行番号
終了行番号
:ワークシートの行番号
:ワークシートの行番号
[注意]
注意)
組込みマクロからの追加処理でクリップボードを使用する場合は、必ず関数実行
前に、クリップボードにワークシートのデータを転送して下さい。
■KeySQLInsert
[書式]
KeySQLInsert(開始行番号,終了行番号)
例)
11
Status = KeySQLInsert(3,10)
注意)
クリップボードにワークシートのデータを転送する必要はありません。
KeySQL for MS Windows ユーザーズ・ガイド
11-15
□Delete
[書式]
Delete(開始行番号,終了行番号(,条件)(,トランザクション))
例)
Delete(3,10)
[機能]
検索実行後のワークシートの開始行から終了行までをデータベースより削除しま
す。
一行削除の時は、終了行番号は開始行番号と同じに指定します。
複数行削除の場合は、終了行番号は開始行番号より、必ず大きく指定します。
開始行番号
終了行番号
条件
:ワークシートの行番号
:ワークシートの行番号
:TRUE、省略時の時には 更新時の条件として検索条件と検索
データを すべて含ませます。
FALSEは削除時の条件として、条件タグに設定されている内容を
使用します。無検索削除処理を行う場合にFALSEとします。
トランザクション
:FALSEの時には、コミット、ロールバックをしません。
TRUE、省略時の時には、作業状態の更新オプションの設定に従
います。
[注意]
注意)
組込みマクロからの削除処理でクリップボードを使用する場合は、必ず関数実行
前に、クリップボードにワークシートのデータを転送して下さい。
■KeySQLDelete
[書式]
KeySQLDelete(開始行番号,終了行番号(,条件))
例)
Status = KeySQLDelete(3,10)
注意)
トランザクションの制御はの制御は、作業状態の更新オプションの設定に従いま
す。
11-16
KeySQL for MS Windows ユーザーズ・ガイド
□KeyExecSql
[書式]
KeyExecSql("SQL文",イミディエートフラグ,保存フラグ,取得行数)
例)
KeyExecSql("BEGIN :RV := F_PLUS1(p1=>1); END;")
[機能]
任意のSQL文を実行します
SQL文
実行する任意のSQL文を指定します。対象のデータベース・システム上で実行でき
るSQL文であれば、どんなSQL文でも構いません。省略時はクリップボード経由で
の指定となります(「長いSQL文の指定方法」を参照)。
SQL文中に二重引用符を含める場合は、1文字につき4文字の二重引用符が必要に
なります (対象アプリケーションから「KeySQL」に送られる際に連続する二重引
用符2文字は二重引用符1文字に変換されます。「KeySQL」は、単独の二重引用
符の間をSQL文と認識し、それに含まれる連続する二重引用符2文字を1文字の二
重引用符に置き換えます)。
たとえば「select * from "TABLE"」は、次のようになります。
KeyExecSql(""select * from """"TABLE"""""")
指定できるSQL文は単独のSQL文のみです。複数のSQL文を指定するとエラーとなり
ます。ただし、使用するデータベース・システムが複数のSQL文を一括で実行する
手段を提供しているような場合は、このかぎりではありません(Oracleの PL/
SQLブロック 等)。指定するSQL文には、終端指定文字は必要ありません(対話型SQL文
実行ツールによくあるような、終端の";"文字は必要ありません)。
「KeySQL」は、指定されたSQL文を次の場合を除き、何も加工しないでデータベー
ス・システムに送ります。
1.ホワイトスペースの圧縮(トリミング)
空白文字、タブ文字、改行文字、復改文字またはそれらの組み合わせが2
文字以上連続する場合、それらを空白文字1文字に置き換えます。ただ
し、クオート文字に囲まれている範囲(単一引用符および二重引用符の両
方)は圧縮しません。
2.置換文字列の置き換え
「KeySQL」は、指定されたSQL文中に置換文字列の指定があった場合は、
その定義内容に置き換える処理を行います。指定方法および詳細な説明
は、置換文字列の項目を参照して下さい。
KeySQL for MS Windows ユーザーズ・ガイド
11-17
11
イミディエートフラグ
TRUE または FALSE でイミディエート実行か否かを指定します。TRUE を指定した
場合はイミディエートモードでの実行になります(EXEC IMMEDIATE)。FALSE を指
定した場合はカーソルを使用した実行になります。SELECT文の実行の場合は必ず
FALSE(カーソル使用)を指定せねばなりません(または省略してください)。また、
変数を含むSQL文を実行する場合も FALSE(カーソル使用)を指定せねばなりませ
ん。ただし、SELECT文以外の場合は対象のデータベース・システムによりカーソ
ル使用が許可されていない場合がありますので注意して下さい。省略時は FALSE
(カーソル使用)です。
保存フラグ
TRUE または FALSE で選択リストの保存の可否を指定します。実行するSQL文が
SELECT文でない場合は(前回の保存データを破棄することを除いて)この指定は意
味をもちません。TRUE を指定した場合は、このKeyExecSql関数で実行するSELECT
文により取得される全選択リストは「KeySQL」の内部で保存されます(Fetch関数
呼び出しによりクリップボードへ取得した選択リスト・データがコピーされた後
も「KeySQL」の内部で保存されます)。
保存された選択リストは DDE REQUEST によるデータ取得により取り出せます(別
項参照)。DDE REQUEST による取り出しを行わない場合は、このフラグの指定は
FALSE(保存しない)にして下さい(メモリー節約の為)。この指定による選択リスト
の保存は重複して行われません。保存を指定して実行した場合は、SELECT文であ
るか否かにかかわらず、前回の保存データは破棄されます。ただし、FALSE(保存
しない)を指定して実行した場合は(SELECT文の実行でも)保存されている選択リス
ト・データは(もしあれば)保持し続けられます。
「KeySQL」自身が、更新時のデータ照合の為にこの保存機能を使用して検索を
行っていますので、「KeySQL」の検索機能を実行した場合も、保存情報は破棄さ
れます。省略時はFALSE(保存しない)です。
取得行数
選択リストの取得行数を指定します。実行するSQL文がSELECT文でない場合は意味
を持ちません。0(ゼロ)を指定した場合は制限なしです。ゼロ以外を指定した場
合は、最大でも指定行数の取得しか行われません。ゼロ以外を指定した場合で、
かつ、取得可能行数が指定行数を超える場合は、指定行数を取得後に「KeySQL」
が通常の "データなし" のエラーを擬似的に発生させます。(たとえばOracleを使
用している場合は、エラーコードが 1403 となります)。
この機能により、指定行数(あるいは指定行数より少ない全取得可能行数)の取得
後にFetch関数がエラー終了することと、その際のエラー処理(エラーコードによ
る処理の分岐)が "データなし”エラーか否かでのみ行えることが保証されます。
11-18
KeySQL for MS Windows ユーザーズ・ガイド
SELECT文実行時の取得行数の制限は、このパラメータと「KeySQL」の設定値の2
種類があります(「KeySQL」の最大取得行数の設定値は「ダイレクトモードの設
定・最大選択行数」です)。KeyExecSql関数でSELECT文を実行した際の最大取得行
数は、次の規則により決定されます。
1. 取得行数(このパラメータ)がゼロ以外ならば、指定された行数。
2. 取得行数(このパラメータ)がゼロで指定された際に、「KeySQL」の最大選
択行数が設定されていた場合は、その設定値。
3. 両方とも指定(設定)されていない場合は制限なし。
なお、各パラメータを省略する場合は、区切りのカンマだけを指定して下さい。
ただし、後続のパラメータをすべて省略する場合は、カンマの指定も省略できま
す。
たとえば KeyExecSql("SQL文",,,) と KeyExecSQL("SQL文") は同じです。
また、保存行数のみを100行で指定する場合は ExecSql(,,,100) となります。
例)保存なしでSELECT文を実行する場合(全行取得)
KeyExecSql("select * from table")
例)イミディエートモードでCOMMIT文を実行する場合
KeyExecSql("commit",TRUE)
例)最大50行で選択リストを保存する場合
11
KeyExecSql("select ...",,TRUE,50)
KeySQL for MS Windows ユーザーズ・ガイド
11-19
長いSQL文の指定方法
実行するSQL文が長すぎてセルに入らない、あるいは、DDEで扱える文字数を越え
る様な場合には、次のいずれかの方法を使用してSQL文を指定して下さい。
1.Putマクロ関数を使用する。
Put マクロ関数を使用して分割されたSQL文を発行し、
最後のSQL文をKeyExecSql関数で指定します。
2.クリップボード経由でSQL文を指定する。
KeyExecSql関数を実行する前にクリップボードにSQL文をコピーしておき
(複数セルに渡ってSQL文を作成しておき、そのセル範囲全体を COPY 命令
等でクリップボードにコピーしておき)、"SQL文"パラメータを省略して
KeyExecSql関数を呼び出します(「KeySQL」は、""SQL文""パラメータを省
略してKeyExecSql関数が呼び出された場合はクリップボード経由での指定
とみなします)。
「KeySQL」は、クリップボードから読み出したSQL文が複数セルにまた
がって作成されたものならば、各セルの内容を空白1文字を挿入しながら
連結することで実行するSQL文を作成します。単語がセル境界をまたがな
いようにして下さい。引用符で囲んだ文字列も単一のセルにおさめるよう
にして下さい。なお、クリップボード経由でSQL文を指定する場合は、二
重引用符を重ね書きする必要はありません。
3.SQL文をテキストファイルに書き出し、そのファイル名を指定する。
テキスト・ファイルにSQL文を書き出し(または、あらかじめ作成してお
き)、そのファイル名を半角 "@" に続けて"SQL文"パラメータに指定しま
す。ファイル渡しの場合も、指定できるSQL文は単独のSQL文だけです(複
数のSQL文をファイルに書いておくとエラーになります)。
■KeySQLExecSql
[書式]
KeySQLExecSql("SQL文",イミディエートフラグ,保存フラグ,取得行数)
例)
Status = KeySQLExecSql("BEGIN :RV := F_PLUS1(p1=>1); END;")
11-20
KeySQL for MS Windows ユーザーズ・ガイド
□Bind
[書式]
Bind("変数名","値")
例)
Bind("p1","1")
[機能]
変数の設定を行います。
変数名
定義する変数の名前です。「KeySQL」では、使用できる文字セットの制限はあり
ません。全角文字を含めてすべての文字を使用できます。また、文字数の制限も
ありません。ただし、定義した変数をSQL文中で使用する場合(ホスト変数として
使用する場合)は、対象のデータベース・サーバーにより、使用可能な文字セット
と文字数の制限がある場合がありますので、注意して下さい。
値
定義する変数の値です。変数の型の指定は特にありません。文字セットおよび文
字列長の制限も特にありません。変数をSQL文中で使用する場合は、「KeySQL」に
より適当なデータ型に変換されてデータベース・サーバーに送られます。整数値
等を定義する場合は、二重引用符で囲む必要はありません(囲んでも構いませ
ん)。二重引用符を含む文字列を値として定義する場合は、二重引用符で囲んだ上
で、文字列中の二重引用符1文字を4文字の二重引用符で指定せねばなりませ
ん。
■KeySQLBind
[書式]
KeySQLBind("変数名","値")
例)
Status = KeySQLBind("p1","1")
KeySQL for MS Windows ユーザーズ・ガイド
11-21
11
□DefMacro
[書式]
DefMacro("置換文字列名","値")
例)
DefMacro("P2","TEST")
[機能]
置換文字列の定義を行います。
置換文字列名
定義する置換文字列の名前です。使用できる文字セットの制限はありません。全
角文字を含めてすべての文字を使用できます。また、文字数の制限もありませ
ん。
値
定義する置換文字列の値です(SQL文実行時に置き換えられる文字列です)。文字
セットおよび文字列長の制限は、特にありません。空白文字や二重引用符を含ま
ない場合は、二重引用符で囲む必要はありません(囲んでも構いません)。二重引
用符を含む文字列を値として定義す場合は、二重引用符で囲んだ上で、文字列中
の二重引用符1文字を4文字の二重引用符で指定せねばなりません。
■KeySQLDefMacro
[書式]
KeySQLDefMacro("置換文字列名","値")
例)
Status = KeySQLDefMacro("P2","TEST")
11-22
KeySQL for MS Windows ユーザーズ・ガイド
□Load
[書式]
Load(種類,"ファイル名",ロードオプション)
例)
Load(BIND,"test",TRUE)
[機能]
各種データの読み込みを行います
種類
ロードするデータの種類を指定します。指定できるものは次のいずれかです。
BIND
:変数設定ファイルをロードします。
MACRO
:置換文字列設定ファイルをロードします。
SETUPD
:ダイレクトSQLの作業状態設定ファイルをロードします。
FILE
:「KeySQL」マクロファイルをロードします。
ファイル名
ロードするファイルの名前です。指定したファイルの内容は、種類パラメータで
指定したものでなければなりません。
ロードオプション
種類パラメータで「BIND」または「MACRO」を指定した場合は、TRUE または
FALSE でロード前の設定値の削除の可否を指定します。種類パラメータで
「SETUPD」を指定した場合は、このパラメータを指定してはいけません(省略しな
ければいけません)。
「BIND」または「MACRO」でTRUE を指定した場合は、ロードを行う前に、現在の
変数設定または置換文字列の設定をすべて削除します。FALSE を指定した場合
は、現在の設定に追加してロードされます。省略時は FALSE(削除しない)です。
「FILE」でTRUEを指定した場合には、画面をオープンし、マクロファイルを読み
込んだ後で実行します。FALSEを指定すると、画面をオープンし、マクロファイル
を読み込みます。
■KeySQLLoad
[書式]
KeySQLLoad(種類,"ファイル名",ロードオプション)
例)
Status = KeySQLLoad(BIND,"test",TRUE)
KeySQL for MS Windows ユーザーズ・ガイド
11-23
11
□Save
[書式]
Save(種類,"ファイル名",セーブオプション)
例)
Save(BIND,"test")
[機能]
各種データの保存を行います。
種類
セーブするデータの種類を指定します。指定できるものは次のいずれかです。
BIND
: 変数設定ファイルをセーブします。
MACRO
: 置換文字列設定ファイルをセーブします。
SETUPD
: ダイレクトSQLの作業状態設定ファイルをセーブします。
FILE
:「KeySQL」マクロファイルをセーブします。
ファイル名
セーブするファイルの名前です。指定したファイルが既に存在する場合は、上書
きされます。
セーブオプション
種類パラメータで「SETUPD」を指定した場合は、TRUE または FALSE でセーブす
る設定値の種類を指定します。種類パラメータで「BIND」「MACRO」または
「FILE」を指定した場合は、このパラメータを指定してはいけません(省略しなけ
ればいけません)。
「SETUPD」でTRUE を指定した場合は、「KeySQL」の環境設定パラメータすべてが
セーブされます。FALSE を指定した場合は、重要なパラメータのみがセーブされ
ます。省略時は FALSE(重要なパラメータだけ)です。
■KeySQLSave
[書式]
KeySQLSave(種類,"ファイル名",セーブオプション)
例)
Status = KeySQLSave(BIND,"test")
11-24
KeySQL for MS Windows ユーザーズ・ガイド
□Logout
[書式]
Logout()
例)
Logout()
[機能]
データベースからログアウトします。
「KeySQL」を再立ち上げせずに、続けてconnectできます。
■KeySQLLogout
[書式]
KeySQLLogout()
例)
Status = KeySQLLogout()
11
KeySQL for MS Windows ユーザーズ・ガイド
11-25
□Exit
[書式]
Exit()
例)
Exit()
[機能]
「KeySQL」を終了します。
11-26
KeySQL for MS Windows ユーザーズ・ガイド
□Put
[書式]
Put("構文")
例)
Put ("従業員.部門番号 = 部門.部門番号")
Condition (w,"AND 従業員.給与 >=300000")
[機能]
Condition で設定する項目が多い場合、あるいはExecSqlで長いSQL文を使用する
場合に、分割して記述することができます。
■KeySQLPut
[書式]
KeySQLPut("構文")
例)
Status = keySQLPut
("従業員.部門番号 = 部門.部門番号")
11
KeySQL for MS Windows ユーザーズ・ガイド
11-27
□Sheet
[書式]
Sheet ("名称")
例)
Sheet ("C:¥KeySQL¥SAMPLE.MAC")
[機能]
名称に指定された画面をアクティブにします。指定する画面は、すでにオープン
されている必要があります。
画面操作でダイレクト画面をアクティブにした状態で、たとえば「Excel」からマ
クロを実行すると、エラーとなります。この場合には、このマクロを実行して、
メイン画面である’無題’をアクティブにする必要があります。
11-28
KeySQL for MS Windows ユーザーズ・ガイド
□Clear
[書式]
Clear ()
例)
Clear()
[機能]
シートの初期化を行います。
■KeySQLClear
11
KeySQL for MS Windows ユーザーズ・ガイド
11-29
■KeySQLRequest
[書式]
KeySQLRequest ("項目")
例)
aCopyRows = KeySQLRequest("Exec.CopyRows")
[機能]
ダイレクトコールでDDE REQUESTの機能をサポートします。サポートされる項目は
第12章を参照してください。
11-30
KeySQL for MS Windows ユーザーズ・ガイド
第12章
DDE REQUEST
「KeySQL」では、DDE REQUEST の問い合わせに対する応答をサ
ポートします。
12
KeySQL for MS Windows ユーザーズ・ガイド 12-1
12.1
DDE REQUEST サポート項目
「KeySQL」では、Excel 等でのマクロ・プログラム作成の為に、DDE REQUEST に
よる各種問合せに対する応答をサポートします。サポートするデータ項目のカテ
ゴリは次のとおりです。
1)実行状況の情報
2)変数の設定値
3)置換文字列の設定値
4)ダイレクトSQLの作業状態設定値
5)選択リスト
6)その他
□情報の取得方法
マクロ・プログラムからの、DDE REQUEST による問い合わせ方法は、次のとおり
です。(詳細な説明は、各アプリケーションのマニュアルを参照して下さい。)
[書式]
DDERequest (チャネル,"項目名")
12-2
KeySQL for MS Windows ユーザーズ・ガイド
12.2
DDE REQUEST 応答項目一覧
各カテゴリ別の DDE REQUESTの 問合せによる応答項目の一覧は、次のとおりで
す。
□実行状況の情報
このカテゴリに属する項目は、「KeySQL」の実行状況(主にデータベース・サー
バーへのSQL文の実行状況)に関する情報です。処理ステータスやエラーコード、
取得した選択リストの列数や行数等の項目があります。このカテゴリに属する項
目の問い合わせは、「KeySQL」のマクロジェネレート機能で作成されるアプリ
ケーションごとのマクロプログラムにも使われています。このカテゴリの項目
は、すべて "Exec." という名前ではじまります。
1)Exec.Status
最後に実行した「KeySQL」の DDE サポート関数の処理結果を、"OK" または "NG"
のいずれかで返します。(最後に実行したSQL文の実行結果ではありませんので、
注意して下さい。)
2)Exec.ErrCode
最後に実行した「KeySQL」の DDE サポート関数の処理コードを、整数値のリスト
で返します(複数個のエラーコードを返す場合があります)。複数個のエラーコー
ドが返された場合は、エラーの発生順になります。複数個のエラーが発生した場
合でも、2番め以降のエラーは最初のエラーによる2次的なエラーです。マクロ
プログラムでチェックすべき(重要な)エラーコードは、先頭のエラーコードで
す。この項目の問い合わせにより返されるエラーコードは、SQL文の実行で発生し
たデータベース・サーバーからのものだけではありません。「KeySQL」も含めた
全体のエラーエラーコードのリストになります。データベース・サーバーのエ
ラーコードを知りたい場合は、Exec.DbErrCode 項目を使用して下さい。
-1
0
1
:エラー
:正常
:実行ダイアログ、更新件数確認オプションでキャンセルされた場合
3)Exec.DbErrCode
最後に実行したSQL文の処理ステータスを、単独の整数値で返します。この項目の
問い合わせで返されるエラーコードは、リストにはなりません。常に、最後に実
行したSQL文の結果となります。付随して「KeySQL」のエラーが発生した場合で
も、データベース・サーバーからのエラーコードを返します。ただし、ネット
ワークの通信エラーが生じた場合は、データベース・サーバー以外(ネットワーク
通信プロダクト等)のエラーコードを返す場合があります。最後に実行したSQL文
でエラーが発生しなかった場合は、0(ゼロ)を返します。
KeySQL for MS Windows ユーザーズ・ガイド 12-3
12
4)Exec.ErrMsg
最後に実行した「KeySQL」の DDE サポート関数のエラーメッセージを返します。
(最後に実行したSQL文の実行結果ではありませんので注意して下さい。)また、こ
の項目は Exec.ErrCode と同様に、複数個のエラーメッセージをリストで返す場
合があります。正常終了した際にこの項目の問い合わせを行った場合は、正常終
了をあらわすメッセージを返します。マクロプログラムでこの項目の応答値を処
理する場合は、複数個のメッセージが返される可能性があることに注意して下さ
い。
5)Exec.IsErrEOF
選択リストの取得時に発生するエラーの判別に用意されている項目です。この項
目に対する問い合わせは、fetch関数がエラーを返した直後のみ有効です。その他
の場合、問い合わせを行った際に返される値は不定です。この項目の問い合わせ
により返される値は(有効な場合)、0(ゼロ)または1で、次の意味を持ちます。
1
:fetch関数のエラーは、「もうデータはありません」だった。
0(ゼロ):fetch関数のエラーは、その他のエラーだった。
2
:実行ダイアログでキャンセルされた。
fetch関数が(残りの0選択リストの取得をデータベース・サーバーに要求した際
に、データベース・サーバーから「もうデータはありません」のエラーコードを
返された場合にのみ、この項目に対する応答値は1になります。(「もうデータは
ありません」の場合のエラーコードは、データベース・サーバーにより異なりま
す。「KeySQL」は、各データベース・サーバーによるエラーコードの値の違いを
吸収する為に、この項目をサポートします)。
例)Oracleを使用している場合は、次の2つのマクロプログラムは等価です。
Exec.IsErrEOF 問い合わせを使用しない場合
=IF(ISERR(EXECUTE(CN,"fetch()")))
= IF(INDEX(REQUEST(CN,"Exec.DbErrCode"),1,1)<>1403)
= エラー処理()
= END.IF()
= END.IF()
Exec.IsErrEOF 問い合わせを使用した場合
=IF(ISERR(EXECUTE(CN,"fetch()")))
= IF(INDEX(REQUEST(CN,"Exec.IsErrEOF"),1,1)<>1)
= エラー処理()
= END.IF()
= END.IF()
12-4
KeySQL for MS Windows ユーザーズ・ガイド
6)Exec.CopyRows
最後にクリップボードにコピーした行数(表名、項目名をコピーした行も含みま
す)を返します。「KeySQL」のfetch関数呼出し後にこの項目の問い合わせを行う
と、クリップボードにコピーされた選択リストの行数が返されるので、貼り付け
処理を実行するセル移動数等を、マクロプログラム中で判断できます。この項目
の応答値は、「KeySQL」の DDE サポート関数を呼び出す度に変化します。fetch
関数実行によるコピー行数を取得する場合は、fetch関数呼出し直後(他の
「KeySQL」の関数を呼び出す前)に、問い合わせを行って下さい。
7)Exec.TotalCopyRows
最後に実行したSQL文でクリップボードにコピーした総行数(表名、項目名の行を
含みます)を返します。最後に実行したSQL文が非SELECT文の場合は、0(ゼロ)を
返します。
8)Exec.TotalFetchRows
最後に実行したSQL文で取得した選択リストの総行数(表名、項目名の行は含みま
せん)を返します。最後に実行したSQL文が非SELECT文の場合は、0(ゼロ)を返し
ます。
9)Exec.ColCount
最後に実行したSQL文で取得した選択リストの実際の列数を返します。「KeySQL」
の検索機能での、選択項目が設定されていないシートは含めません。最後に実行
したSQL文が非SELECT文の場合は、0(ゼロ)を返します。
10)Exec.ColList
最後に実行したSQL文で取得した選択リストの列情報を返します。最後に実行した
SQL文が非SELECT文の場合に返される値は不定です。
有効な場合に返される値は常に2次元のリストで、1次元目に項目名(列名)、2
次元目にデータ型となります。また、各次元の要素数は、常に Exec.ColCount で
返される値です。2次元目で返されるデータ型はデータベース・サーバー上での
データ型ではなく、次の3種類のいずれかになります。
(1) "NUMBER" 数値型全般です。
(2) "DATE" 日付型(時刻型等も含む)です。
(3) "STRING" 上記以外は、すべてこのデータ型になります。
この項目に対する応答値は、「KeySQL」の将来のバージョンでは拡張される可能
性があります(3次元目にデータベース・サーバー上でのデータ型を返したり、4
次元目でナル値の可否を返したり等)。よって、この項目の応答値が2次元でなけ
ればならないマクロプログラムは作成しないように注意して下さい。
KeySQL for MS Windows ユーザーズ・ガイド 12-5
12
11)Exec.BindCount
最後に実行したSQL文で使用されていた変数(ホスト変数)の数を返します。使用さ
れていない場合は、0(ゼロ)を返します。
12)Exec.BindList
最後に実行したSQL文で使用されていた変数(ホスト変数)の名前をリストで返しま
す。この項目も Exec.ColList と同様に、将来のバージョンで拡張(多次元化)さ
れる可能性がありますので、注意して下さい。
13)Exec.Format.Date
最後に実行したSQL文で使用した日付書式を返します。この項目の問い合わせで返
される応答値は、次の2通りの場合を除き SetupD.Format.Date 項目の問い合わ
せに対する応答値と同じです。
(1) 日付書式が設定されていない場合。
この場合は「SetupD.∼」はヌル文字列(長さゼロの文字列)を返しますが、
「Exec.∼」は対象のデータベースサーバの標準書式を返します。
(2) SQL文を実行後日付書式を変更した場合。
「SetupD.∼」は常に現在の設定値を返します。「Exec.∼」は最後にSQL文を実
行した時に用いた日付書式を返します。
□変数の設定値
このカテゴリに属する項目は、「KeySQL」によって管理されている変数と対応し
ています。変数の内容(設定値)をマクロプログラム中で知る必要がある場合
は、このカテゴリの項目に問い合わせを行って下さい。このカテゴリの項目は
"Bind." の後ろに変数名をつけた名前になります。
例)変数「名前」の値を問い合わせる場合(「Excel 95」)
=SET.NAME("名前",REQUEST(CN,"Bind.名前"))
□置換文字列の設定値
このカテゴリに属する項目は、「KeySQL」によって管理されている置換文字列と
対応しています。置換文字列の内容(設定値)をマクロプログラム中で知る必要が
ある場合は、このカテゴリの項目に問い合わせを行って下さい。このカテゴリの
項目は "Macro." の後ろに置換文字列名をつけた名前になります。
例)置換文字列「条件」の値を問い合わせる場合(「Excel 95 VBA」)
条件 = DDEREQUEST(Cn, "Macro.条件")
12-6
KeySQL for MS Windows ユーザーズ・ガイド
□ダイレクトSQLの作業状態設定値
このカテゴリに属する項目は、すべてダイレクトSQLの作業状態の設定値と対応
しています。ダイレクトSQLの設定値をマクロプログラム中で知る必要がある場
合は、このカテゴリの項目に問い合わせを行って下さい。このカテゴリの項目は
"SetupD." の後ろに設定値名をつけた名前になります。ダイレクトSQLの作業状
態設定値名は、「KeySQL」起動ディレクトリにある「DIRSQL.INI」に納められて
います。
例)作業状態設定値「Option.MaxRowCount」(取得行数の制限値)の値を問い合わ
せる場合(「Lotus 1-2-3」)
{DDE-REQUEST COUNT,"SetupD.Option.MaxRowCount"}
□選択リスト
このカテゴリに属する項目は、最後に実行したSELECT文で取得した選択リストの
各行(および各列)に対応しています。
「KeySQL」を使用して取得した選択リストは、クリップボード経由での貼り付け
による方法の他に、このカテゴリの項目への問い合わせで取得できます。クリッ
プボード経由での貼り付けによるデータ取得の方が、簡単でかつ高速です。この
カテゴリの項目への問い合わせでは、選択時の内容をマクロプログラムの変数に
返せることの他に、貼り付けデータでの形式と異なる便利なデータ形式での取得
をサポートしています。このカテゴリの項目名は "SaveList." の次に位置指
定、最後にデータ形式をを指定する、次のような書式になります。
項目名の書式:"SaveList.位置指定[.データ形式]"
(1)位置指定
取得するデータの選択リスト中の位置を、行番号と列番号で指定します。この行
番号と列番号は、スプレッドシート上の貼り付け位置ではありません。選択リス
トの1行目ならば1を指定します。同様に1列目ならば1を指定します。表名と
項目名を両方とも貼り付けない場合で、R1C1(A1)から貼り付けた場合は、スプ
レッドシート上のセル位置と一致します。(ただし「KeySQL」の選択リストの
「中抜き」をしない場合です。)列番号は実際の取得項目数に対応します。
(「KeySQL」の「中抜き」の選択項目を除外した列数に対応します。)位置指定で
行と列の両方を指定した場合は、対応する位置のデータが返されます。行のみを
指定した場合は、対応する行のデータがリストで返されます。列のみの指定や複
数行の取得は行えません。位置指定の書式は次のいずれかです。
a).
b).
c).
d).
R行C列
R行
X行
行
R1C1形式での単一データ指定
R1C1形式での行データ指定
A1形式での単一データ指定
A1形式での行データ指定
例:R1C1
例:R1
例:A 1
例:1
KeySQL for MS Windows ユーザーズ・ガイド 12-7
12
R1C1形式とA1形式はどちらでも構いません。(ExcelでA1、LotusでR1C1を指定して
も構いません)。また形式を判断できない場合は、R1C1形式が優先されます(A1形
式のつもりで「R1」を指定した場合でも、R1C1形式で1行目を指定したことにな
ります)。A1形式での指定を明示する為には、先頭に "!"(エクスクラメーション
マーク)を付けて下さい。("!R1" は A1形式で R1 の単一データを指定したことに
なります。)
(2)データ形式
取得するデータの形式を指定します。このオプションでは次のいずれかを指定で
きます。
a). ".App" 対象アプリケーション用の形式
b). ".DB"
SQL文に埋めこむ為の形式
c). ".Rare" 加工しない形式(ただし、日付型のデータだけは日付書式で設定
されている形式に変換されます。)
データ形式は省略できます。省略した場合の形式は .Rare です。
例)
=SET.NAME("行データ",REQUEST(CN,"SaveList.R1.App"))
□その他
このカテゴリは、前項までのカテゴリに属さない項目です。「KeySQL」では、次
のひとつだけをサポートします。
1)SQL文埋めこみ用日付書式変換
項目名:DBDate."フォーマット"."日付文字列"
応答値:"フォーマット" 形式の日付文字列 "日付文字列" をSQL文に埋めこめる
形式に変換した文字列を返します。
例)Oracle7使用時
項目名:"DBDate.""dd/mmm/yyyy hh:mm:ss"".""31/Jul/1994 1:23:45"""
応答値:"TO_DATE('1994-07-31 01:23:45','YYYY-MM-DD HH24:MI:SS')"
項目名:"DBDate.""yy/mm/dd"".""94/07/31""
応答値:"'91-07-31'"
12-8
KeySQL for MS Windows ユーザーズ・ガイド
第13章
「Excel 97/2000/2002
」
97/2000/2002」
マクロ
Microsoft Excel のマクロ関数の取扱いについて
解説します。
13
KeySQL for MS Windows ユーザーズ・ガイド 13-1
13 「Excel」マクロ関数説明
「KeySQL」を「Excel」のマクロから操作する時に使用する主要な「Excel」のマ
クロ関数について、簡単に説明します。詳しくは、Microsoft Excel のマニュア
ルを参照してください。
尚、サンプルマクロの中に記述してあります、「エクセル@@」はご利用の環境に
合せて読み替えて下さい。
13.1
通常モード
この項では、通常モードでの実行です。
13.1.1
主要マクロ関数
「Excel」マクロ関数
1. DDEチャネルのオープン
2. コマンドの実行
3. DDEチャネルのクローズ
4. データの貼り付け 5. セルの移動
6 エラー判定
7.「KeySQL」の起動
DDEInitiate(アプリケーション名,トピック)
DDEExecute(チャネル,コマンド)
DDETerminate(チャネル)
Paste
ActiveCell.Cells(シート名とセル番号)
IF 変数名
shell(アプリケーション名)
アプリケーション名
チャネル
コマンド
:KeySQLを指定します
:DDEチャネルを指定します
:「KeySQL」マクロ関数を指定します
□チャネルオープン
[書式]
CN=DDEInitiate("KeySQL","SYSTEM")
[機能]
DDEチャネルをオープンします。
□チャネルクローズ
[書式]
DDETerminate(チャネル)
[機能]
DDEチャネルをクローズします。
13-2
KeySQL for MS Windows ユーザーズ・ガイド □コマンドの実行
[書式]
DDEExecute チャネル,"[KeySQLマクロ関数]"
[機能]
「KeySQL」に対してマクロを発行します
13.1.2
マクロファイル機能
「KeySQL」マクロ・ファイルを指定して「Excel」マクロから実行します。
「KeySQL」でマクロ・ジェネレート機能を使用して「KeySQL」マクロ・ファイルを
作成すると、同時にそのマクロ・ファイルを使用する「Excel」マクロ・ファイルも
自動的に生成されます。
マクロ・ジェネレート機能でマクロ・ファイルを作成すると、次2つのファイルが
生成されます。
例)ファイル名をsampleとした場合
「KeySQL」マクロ・ファイル名
sample.MAC
「Excel」マクロ・ファイル名
sample.VBA
「Excel」で「Excel」マクロ・ファイルを読み込むには、次の方法があります。
「ツール」−「マクロ」−「Visual Basic editor」でVisual Basic editor画面
を開き、メニューバーの「ファイル」−「ファイルのインポート」を選び、ファ
イル(sample.vba)を読み込みます。
プロジェクトウィンドウ上に「標準モジュール」のフォルダが作成され、中に
「Module」が出来上がります。
「KeySQL」のマクロ・ジェネレータでクリップボードに貼り付けた場合には、直
接編集の貼り付けが行えます。
KeySQL for MS Windows ユーザーズ・ガイド 13-3
13
□サンプル・マクロ1
「KeySQL」マクロ・ジェネレータで、生成される「Excel」サンプル・マクロ・ファ
イルを使用して、基本的な動きを説明します。
Public Sub KeySQLサンプルマクロ()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
セル位置を設定します
On Error Goto NoKeySQL
Cn = DDEInitiate("KEYSQL","SYSTEM")
チャネルをオープンします
If IsError(Cn) Then
Exit Sub
End if
On Error goto CloseAndQuit
DDEExecute Cn,"[ExecFile(""C:¥KeySQL¥sample.mac"")]"
「KeySQL」マクロ・ファイルを実行します
Status = DDEAppReturCode
If Status <> 0 Then GoTo CloseAndQuit
ファイルの読み込みをチェックします。
エラーの場合にはCloseAndQuitに行きます
While Status = 0
データがなくなるまでループします
aCopyRows = DDERequest(Cn, "Exec.CopyRows") : CopyRows = aCopyRows
(LBound(aCopyRows))
If CopyRows > 0 Then
ActiveSheet.Paste
表名、項目名、データを貼付ます。
ActiveCell.Cells(CopyRows + 1).Activate
セルの位置を調整します
End If
DDEExecute Cn,"[Fetch(0)]"
全件検索を行います
Status = DDEAppReturCode
Wend
aStatus = DDERequest(Cn, "Exec.IsErrEOF") : Status = aStatus(LBound
(aStatus))
If Status = 0 Then
GoTo CloseAndQuit
正常終了かチェックします
End If
13-4
KeySQL for MS Windows ユーザーズ・ガイド DDEExecute Cn,"[FetchEnd()]"
検索終了を通知します
aRowCount = DDERequest(Cn,"Exec.TotalCopyRows") : RowCount = aRowCount
(LBound(aRowCount))
ActiveCell.Cells(-RowCount + 1).Activate
セルの位置を開始位置まで戻します
CloseAndQuit:
Call DDETerminate(Cn)
End Sub
DDERequest関数についての説明は、第12章を参照してください。
「KeySQL」マクロ・ジェネレート時にオプションを指定した場合には、オプショ
ンに応じたマクロが記述されます。
たとえばオプション’実行後「KeySQL」を終了する’を選択すると、前ページの
マクロ・ファイルには次の変更が加えられます。
セルの位置を開始位置まで戻した後に
Call DDEExecute(Cn,"[Exit()]")
が挿入されます。
□「KeySQL」マクロジェネレートで作成されたSAMPLE.MACの内容
clear();
From("従業員:);
select (1,"従業員.従業員番号",,,);
select (2,"従業員.従業員名",,,);
condition (W,"従業員.部門番号 = 10");
execute ("エクセル 97","[Book1]Sheet1","A1",0,0);
「KeySQL」マクロ・ファイルでは、各「KeySQL」マクロ関数の最後にセミコロン
(;)が必要です。またテキスト・ファイルですので、簡単に内容を変更して使
用することができ、「Excel 」マクロで指定している「KeySQL」マクロ・ファイル
名を変更するだけで、別の検索に使用できます。
KeySQL for MS Windows ユーザーズ・ガイド 13-5
13
13.1.3
エグゼキュート機能
「Excel」マクロに直接「KeySQL」マクロ関数を記述して実行します。
マクロファイル機能では検索するための「KeySQL」マクロ関数がファイルに書き
込まれていますが、エグゼキュートモードでは全ての「KeySQL」マクロ関数が使
用できます。
□サンプル・マクロ1
従業員の表から部門番号10に属する従業員番号、従業員名を検索します。
Public Sub KeySQLサンプルマクロ()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
セルの移動
Cn = DDEInitiate("KEYSQL","SYSTEM")
チャネルをオープンします
DDEExecute Cn,"[select(1, ""従業員.従業員番号"")]"
列1に従業員番号を設定します
DDEExecute Cn,"[select(2, ""従業員.従業員名"")]"
列2に従業員名を設定します
DDEExecute Cn,"[From(""従業員"")]"
検索する表名を指定します。
DDEExecute Cn,"[Condition(W,"" 従業員.部門番号 = 10"")]"
検索条件の設定をします
DDEExecute Cn,"[execute(""エクセル 97"", ""[Book1]sheet1"",""A1"",0,0)]"
データを「Excel 97」のブック1シート1のA1から貼
り付ける事を通知します
以降はマクロファイル機能と同様です
If Status <> 0 Then GoTo CloseAndQuit
While Status = 0
aCopyRows = DDERequest(Cn, "Exec.CopyRows") : CopyRows =
aCopyRows(LBound(aCopyRows))
If CopyRows > 0 Then
ActiveSheet.Paste
ActiveCell.Cells(CopyRows + 1).Activate
End If
DDEExecute Cn,"[Fetch(0)]"
Status = DDEAppReturnCode
Wend
aStatus = DDERequest(Cn, "Exec.IsErrEOF") : Status = aStatus(LBound
(aStatus))
If Status = 0 Then
GoTo CloseAndQuit
13-6
KeySQL for MS Windows ユーザーズ・ガイド End If
DDEExecute Cn,"[FetchEnd()]"
aRowCount = DDERequest(Cn,"Exec.TotalCopyRows") : RowCount = aRowCount
(LBound(aRowCount))
ActiveCell.Cells(-RowCount + 1).Activate
CloseAndQuit:
DDETerminate(Cn)
End Sub
□サンプル・マクロ2
前例の検索したデータのうち2行目から3行目までのデータをシート上で変更し
た後で、データベースにその変更を反映させるには以下のマクロを使います。
Sub sample2()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A3,B4").Select
Application.CutCopyMode=False
Selection.Copy
変更したデータをクリップボードにコピーします
chennel=DDEInitiate("KEYSQL","SYSTEM")
チャネルをオープンします
DDEExecute channel,"[Update(3,4)]"
「KeySQL」に更新を通知します
If Not CInt(Status) = -1 Then GoTo errquit
必要ならばこの後に終了の処理を行います
...
End Sub
13
KeySQL for MS Windows ユーザーズ・ガイド 13-7
□サンプル・マクロ3
ダイレクトにSQL文を実行するマクロは次のようになります。
Public Sub sample3()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
Cn = DDEInitiate("KEYSQL","SYSTEM")
チャネルをオープンします
DDEExecute Cn,"[Put(""select 従業員番号, 従業員名 "")]"
DDEExecute Cn,"[Put(""From 従業員"")]"
DDEExecute Cn,"[KeyExecSql(""where 従業員番号 = 10 "")]"
ダイレクトSQLでの実行であることを通知します
If Status <> 0 Then CloseAndQuit
以降は、マクロファイル機能と同様にデータを貼り付けるマクロを記述します。
DDE で扱える文字数内であれば、1行(KeyExecSQL)で記述してもかまいません。
検索を行わない SQL 文であれば、データを貼り付けるマクロは不要です。
13-8
KeySQL for MS Windows ユーザーズ・ガイド 13.2
ダイレクトコール
この項では、ダイレクトコールでの実行です。
ダイレクトコールでは、必ず初めにサーバーに接続してください。
13.2.1
マクロファイル機能
「KeySQL」でマクロファイルに保存する時、ダイレクトコールを使用するオプ
ションを付けて作成します。作成されるファイルは通常モードと同様です。
□サンプル・マクロ1
「KeySQL」マクロジェネレータで、生成される「Excel」サンプル・マクロ・ファ
イルを使用して、基本的な動きを説明します。
Public Sub KeySQLサンプルマクロ()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
セル位置を設定します
Status = KeySQLConnect("HOST","KEY","SQL","","全テーブル")
サーバに接続します。
Status = KeySQLExecFile("C:¥KEYSQL¥sample.mac")
「KeySQL」マクロファイルを実行します。
If IsError(Status) Then Goto CloseAndQuit
CloseAndQuit:
End Sub
13
KeySQL for MS Windows ユーザーズ・ガイド 13-9
13.2.3
エグゼキュート機能
「Excel」マクロに直接「KeySQL」ダイレクトコール用マクロ関数を記述して実行
します。
□サンプル・マクロ1
従業員の表から、部門番号10に属する従業員番号、従業員名を検索します。
Public Sub KeySQLサンプルマクロ()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
セルの移動
Status = KeySQLFrom("従業員")
検索する表名を指定します。
Status = KeySQLConnect("HOST","KEY","SQL","全テーブル")
サーバに接続します
Status = KeySQLSelect (1, "従業員.従業員番号")
列1に従業員番号を設定します
Status = KeySQLSelect (2, "従業員.従業員名")
列2に従業員名を設定します
Status = KeySQLCondition (W, " 従業員.部門番号 = 10")
検索条件の設定をします
Status = KeySQLExecute ("[Book1]sheet1", "A1", 0, 0)
データを「Excel」のブック1シート1のA1から
貼り付ける事を通知します
If IsError(Status) Then
エラー処理を記述します。
End If
End Sub
13-10
KeySQL for MS Windows ユーザーズ・ガイド □サンプル・マクロ2
前例の検索したデータのうち、2行目から3行目までのデータをシート上で変更
した後でデータベースにその変更を反映させるには、次のマクロを使います。
Sub sample2()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1")
Status=KeySQLUpdate("3", "4")
「KeySQL」に更新を通知します
If Not CInt(Status) = -1 Then GoTo errquit
必要ならばこの後に終了の処理を行います
...
End Sub
□サンプル・マクロ3
ダイレクトにSQL文を実行するマクロは、次のようになります
Public Sub sample3()
Windows("Book1").Activate
Sheets("Sheet1").Activate
Range("A1").Activate
Status = KeySQLPut("select 従業員番号, 従業員名 ")
Status = KeySQLPut("From 従業員")
Status = KeySQLExecSql("where 従業員番号 = 10 ")
ダイレクトSQLでの実行であることを通知します
If IsError(Status) Then CloseAndQuit
以降は、マクロファイル機能と同様にデータを貼り付けるマクロを記述します。
DDE で扱える文字数内であれば1行(ExecSQL)で記述してもかまいません。検索を
行わない SQL 文であれば、データを貼り付けるマクロは不要です。
13
KeySQL for MS Windows ユーザーズ・ガイド 13-11
第14章
メッセージ一覧
この章では、「K e y S Q L 」の出力するメッセージに
ついて解説します。
・ 「K e y S Q L 」エラー・メッセージ
・ 「K e y S Q L 」マクロ・ エラー・メッセ−ジ
14
KeySQL for MS Windows ユーザーズ・ガイド
14-1
14.1
エラー・メッセージ
「KeySQL」は、エラーをメッセージ・ボックスでオペレータに通知します。この
章では、エラー・メッセージの内容とその原因、処置方法について説明します。
エラー・メッセージは、ボックスの〔OK〕をクリックするか、{ENTER}キー(改行)
を押すまで、画面に表示されたままです。
エラーの内容は、メッセージ・ボックスの上部に表示されるキャプション(以降、
下線で表示されます)で分類されます。
ログイン
ホストへの接続に失敗しました。
サーバーのプロセスが起動していないか、同時接続ユーザー数がオーバー
しています。
データベースへの接続に失敗しました。
ユーザー名またはパスワードが正しくありません。ユーザー名またはパス
ワードが正しいか、接続先が正しいか確認して下さい。
検索条件
選択項目が指定されていません(検索)。
シートリストに検索項目が選択されていません。検索項目を項目一覧より
指定してください。
入力文字が日付書式と異なります。
入力文字 : ssssssssss
日付書式 : yy-mm-dd
検索条件データが、KeySQLの「日付書式」で設定されている書式と異なり
ます。
更
新
更新対象行が(**行)あります。実行しますか?
更新条件を満たすレコードが複数存在します。〔OK〕をクリックすると対
象のレコードすべてが更新されます。更新を避けるときは〔キャンセ
ル〕をクリックしてから、検索条件を変更し、再ロードしてから更新して
ください。
データベースの更新が終了しました。コミットしますか?
〔OK〕を選択することでサーバー・データの更新が完了します。
〔キャンセル〕でいままでの処理を無効(ロールバック)にします。
更新対象行が存在しません。(**行め)
行番号を確認してください。ロード外の行番号を指定しています。行番号
を入力しなおしてください。
14-2
KeySQL for MS Windows ユーザーズ・ガイド
クリップボードにコピーされた更新データの行数が間違っています。再ロードし
てから実行してください。
サーバーのデータベースに変更があったために、リクエストのレコードを
特定できません。
データを「Excel」に再度読み込んでから、再実行してください。
削 除
削除対象行が(**行)あります。実行しますか?
削除条件を満たすレコードが複数存在します。〔OK〕をクリックすると対
象のレコードすべてが削除されます。削除を避けるときは、〔キャンセ
ル〕をクリックしてから、検索条件を変更し、再ロードしてから削除しな
おしてください。
削除対象行が存在しません。(**行め)
行番号を確認してください。ロード外の行番号を指定しています。行番号
を入力しなおしてください。
クリップボードにコピーされた削除データの行数が間違っています。再ロードし
てから実行してください。
サーバーのデータベースに変更があったために、リクエストのレコードを
特定できません。
データを「Excel」に再度読み込んでから、再実行してください。
日付データが書式と異なります。
入力文字 : ssssssssss
日付書式 : yy-mm-dd
更新/削除条件データが、KeySQLで設定されている「日付書式」で設定さ
れている書式と異なります。
マクロ作成/実行
クリップボードをオープンできません。 対象アプリケーションのマクロプログラム作成方法で「クリップボードに
出力」を選択した際、クリップボードがオープンできない場合に表示され
ます。他のアプリケーションがクリップボードを使用している可能性があ
ります。クリップボードを使用しているアプリケーションを終了させた後
に、再度実行して下さい。
ファイルが作成できません。
マクロジェネレート時に作成される、KeySQLマクロファイル、対象アプリ
ケーションのマクロプログラム、KeySQLの設定値保存ファイルのいずれか
が作成できません。ファイル名が間違っている可能性があります。ファイ
ル名を修正後、再度実行して下さい。
KeySQL for MS Windows ユーザーズ・ガイド
14-3
14
ファイルへの書き出しができません。
マクロジェネレート時に作成される、KeySQLマクロファイル、対象アプリ
ケーションのマクロプログラム、KeySQLの設定値保存ファイルのいずれか
を作成中、I/Oエラーが発生しました。ディスク容量が足りないか、ハー
ドウェアエラーの可能性があります。ファイルを作成するディスクが正し
く書き込みができることを確認後、再度実行して下さい。
引数の数が制限をこえています。
実行したDDEコマンドの引数に誤りがあります。(このエラーは、ダイレク
トSQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行
した際、引数の数が多すぎると発生します)。マクロプログラムを修正
後、再度実行して下さい。
引数の数が間違っています。
実行したDDEコマンドの引数に誤りがあります。(このエラーは、ダイレク
トSQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行
した際、引数の数が間違っている場合に発生します)。マクロプログラム
を修正後、再度実行して下さい。
引数の値が間違っています。
実行したDDEコマンドの引数に誤りがあります。(このエラーは、ダイレク
トSQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行
した際、引数の値が間違っている場合に発生します)。マクロプログラム
を修正後、再度実行して下さい。
エラーが発生しました。
DDEコマンドの実行でエラーが発生しました。(ダイレクトSQL関係のDDEコ
マンドをアプリケーションのマクロプログラム実行した際に、なんらかの
エラーが発生しました)。ファイル名やパラメータ値等の引数の値が間
違っている可能性があります。マクロプログラムを修正後、再度実行して
下さい。
ダイレクトSQLウィンドウ
引数の値を設定して下さい。 ストアド・プロシージャ画面で、表示される引数の値が設定されていませ
ん。また、省略可能な引数でもありません。引数を設定してから再度実行
して下さい。
出力引数には変数を指定して下さい。
数値や文字列等の定数(リテラル)が指定されています。出力引数に設定で
きるのは変数のみです。変数を指定してから再度実行して下さい。
14-4
KeySQL for MS Windows ユーザーズ・ガイド
入力引数への変数指定は定義済みの変数を指定して下さい。
入力引数に未定義の変数が指定されています。入力引数に変数を指定する
場合には、定義済みの変数を指定して下さい。定義済みの変数を指定する
かリテラルを指定してから、再度実行して下さい。
実行結果ウィンドウ
保存行数は1∼32767の範囲でなければなりません。 実行結果ウィンドウに保存できる行数は、1から32767行です。この範囲に
なおして下さい。
選択範囲が大きすぎます。もう少し小さくして下さい。
実行結果ウィンドウでは、方向キー、マウスとシフトキーで範囲を選択し
た後、コントロールキー+インサートキーの使用により、範囲選択のデー
タを対象アプリケーションのタブレーション形式にしてクリップボードに
コピーする機能があります。この機能で一度にコピーできるのは64Kバイ
トまでです。選択した範囲が大きすぎるので(64Kバイトをこえるので)、
範囲選択を小さくしてから再度実行して下さい。
「アプリケーション」DDE
接続できません サービス:*** トピック:*** 貼り付け対象アプリケーションとの接続(DDE接続)が行えません。対象アプリ
ケーションが起動されていない可能性があります。「OK」を選択した場合は
検索処理が続行されますが、貼り付けは行われません。この場合は、結果表
示ウィンドウに検索結果が残るだけになります。「アプリケーションの登
録」画面で各アプリケーションの自動立ち上げをオンにしておけば、KeySQL
が対象アプリケーションを起動します。
リソース不足の為、タイマが使用できません。
KeySQLでは対象アプリケーションの状態チェックを行う際に、Windowsのタイ
マを使用しています。Windowsのタイマは同時に使用できる個数に制限がある
ので、同時に実行している他のアプリケーションで多くのタイマを使用して
いると状態チェックを実行できません。
ロードモジュールファイルがみつかりません。
対象アプリケーションのロードモジュールがみつかりませ ん。KeySQLは、
「アプリケーションの登録」で「自動立ち上げを行う」をオンにしておく
と、検索結果の貼り付け処理を行う際に対象アプリケーションが起動されて
いない場合に自動立ち上げを行います。自動立ち上げ処理の際の起動コマン
ド(起動する対象アプリケーションのロードモジュールファイル名)は、「ア
プリケーションの登録」画面で定義されたものを使用します。
KeySQL for MS Windows ユーザーズ・ガイド
14-5
14
14.2 マクロ・エラー・メッセージ一覧
「KeySQL」のマクロは、エラーが発生するとメッセージ・ボックスでユーザーに
エラーが発生したことを通知してマクロを終了させます。メッセージ・ボックス
には、エラーの発生した箇所(マクロ・ファイル名とその行数)、エラー 番号、エ
ラー・メッセージが表示されます。
エラーは、大きく3つのタイプがあります。
■文法エラー 文法に誤りがあったときに起こります。マクロ・ジェネレー
タを使って、マクロ・ファイルを作成した場合、このエラー
は起こりません。
■リンクエラー
存在しない命令が使われたときや、パラメータの型が違うと
きに起こります。マクロ・ジェネレータを使って、マクロ・
ファイルを作成した場合、このエラーは起こりえます。
■実行エラー 実行中にアプリケーション・エラーや矛盾が発生 したとき
に起こります。例えば、「KeySQLサーバー」が起動していな
いときにCONNECT命令をしたときにこのエラーは起こりま
す。
14.2.1 ダイレクトSQLの DDEコマンド実行時
ダイレクトSQLモードでのマクロ実行字のエラー表示は、以下の通りです。
DIRSQL: 引数が多すぎます
実行したDDEコマンドの引数に誤りがあります(このエラーは、ダイレクト
SQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行し
た際に、引数の数が多すぎる場合に発生します)。マクロプログラムを修
正後再度実行して下さい。
DIRSQL: 引数の数が間違っています
実行したDDEコマンドの引数に誤りがあります(このエラーは、ダイレクト
SQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行し
た際に、引数の数が間違っている場合に発生します)。マクロプログラム
を修正後再度実行して下さい。
DIRSQL: 引数の値が間違っています
実行したDDEコマンドの引数に誤りがあります(このエラーは、ダイレクト
SQL関係のDDEコマンドをアプリケーションのマクロプログラムから実行し
た際に、引数の値が間違っている場合に発生します)。マクロプログラム
を修正後再度実行して下さい。
DIRSQL: エラーが発生しました
DDEコマンドの実行でエラーが発生しました。(ダイレクトSQL関係のDDEコ
マンドをアプリケーションのマクロプログラムから実行した際に、なんら
かのエラーが発生しました)。ファイル名やパラメタ値等の引数の値が間
違っている可能性があります。マクロプログラムを修正後再度実行して下
さい。
14-6
KeySQL for MS Windows ユーザーズ・ガイド
13.2.2 マクロエラーコードとメッセージ
番号 タイプ
0
1
2
3
4
5
6
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
エラー・メッセージ
文法
文法
コメント記号の前に適切でない文字列を発見しました。
一命の大きさが大きすぎます。
文法
文法
文法
文法
文法
文法
文法
文法
文法
'('又は')'が発見されませんでした。
'('の前に適切でない記号を発見しました。
一命令に'('が二つ以上使用されています。
')'の前に適切でない記号を発見しました。
一命令に')'が二つ以上使用されています。
','を適切でない位置で発見しました。
''を適切でない位置で発見しました。
関数名の定義が適切でありません。
')'の後に文字列を発見しました。
リンク
リンク
リンク
リンク
リンク
リンク
不適切な場所に','を発見しました。
パラメータの定義が適切でありません。
パラメータの定義が適切でありません。
パラメータの定義が適切でありません。
パラメータの定義が適切でありません。
パラメータの定義が適切でありません。
リンク
リンク
リンク
指定した関数名が存在しません。
パラメータ数が違います。
パラメータの型が違います。
実行
実行
実行
実行
実行
実行
実行
実行
実行
CONNECT命令の位置が違います。
CONNECT命令が失敗しました。
SELECT命令の位置が違います。
SELECT命令が失敗しました。
WHERE命令の位置が違います。
WHERE命令が失敗しました。
ORDER BY命令の位置が違います。
ORDER BY命令が失敗しました。
GROUP BY命令の位置が違います。
KeySQL for MS Windows ユーザーズ・ガイド
14
14-7
マクロ・エラー・メッセージ一覧(つづき)
番号 タイプ
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
エラー・メッセージ
実行
実行
実行
実行
実行
実行
GROUP BY命令が失敗しました。
EXECUTE命令の位置が違います。
EXECUTE命令が失敗しました。
FETCH命令の位置が違います。
FETCH命令が失敗しました。
全てのデータをロードしました。
実行
実行
実行
実行
実行
実行
実行
実行
実行
実行
FETCHEND命令の位置が違います。
FETCHEND命令が失敗しました。
EXIT命令の位置が違います。
EXIT命令が失敗しました。
UPDATE命令の位置が違います。
UPDATE命令が失敗しました。
DELETE命令の位置が違います。
DELETE命令が失敗しました。
INSERT命令の位置が違います。
INSERT命令が失敗しました。
実行
マクロファイルが見つかりません。
上記の一覧で、番号があってエラー・メッセージが無いものは、その番号は現在使わ
れていません。
14-8
KeySQL for MS Windows ユーザーズ・ガイド
Fly UP