ここまで使える データ検索 更新ツール KeySQL 5.0 のご紹介 Oracle のデータを身近で徹底活用 2004 年 10 月 5 日 テニック株式会社
はじめに > テニックとは? 業務内容のご紹介 パッケージソフト サービスの企画 開発 販売および受託開発 モバイル関連事業 (Windows CE Mobile Linux 関係 携帯電話関係 ) GIS 関連事業 ( WebGIS 空間データベース) データベース関連パッケージ Web サービス受託開発 KeySQL KeyWeb Creator プロバイダ会員管理系システム 技術者向けコミュニティサイト Web 巡回エンジン GIS エンジン キャラクター新サービス CAI WebNavigator ACMS WebAgent New Powered by Oracle Spatial New New 組込み向け Web ブラウザ コンテンツサービス受託開発 詳しくは弊社 HPをご覧頂ければ幸いです http://www.tenik.co.jp/ 2
はじめに > セミナーの流れ 第 1 部 KeySQL の歴史と優位性 開発の背景とバージョンの変遷 他ツール(MS Query, Access) との比較 第 2 部 KeySQL R5.0 を使いこなす! KeySQLの基本操作( 起動 ~ 検索結果の貼り付け ) 表結合条件の設定 検索条件の再利用 データの追加 Excelマクロの自動生成とアプリケーションの作成 R5.0からの新機能 便利な機能のご紹介 第 3 部 KeySQL の身近な活用例 Case1: マスタメンテナンスの場面で Case2: 営業状況の集計場面で 3
第 1 部 KeySQL の歴史と 優位性 4
第 1 部 > KeySQL とは? 簡単にかつ素早くデータベースにアクセスし そのデータを自由に利用できないだろうか? Oracle と Excel を連携させることで このニーズを実現するのが KeySQL です! エンドユーザーは SQL 文を意識することなくに簡単に検索条件を指定 使い慣れた Excel にデータ取り込めるので データの集計や加工が自由自在に システム開発者は Excel の VBA マクロを自動生成できるため 複雑なコーディングが不要 定型業務アプリケーションを工数をかけずに開発可能に 5
第 1 部 > 開発の背景 LAN の普及に伴い 業種 業態を問わず パソコンから Oracle にアクセスしたいというニーズが生まれる しかし当時は 専門知識を必要とするツールやミドルウェアが多く これがエンドユーザーにとって高い障壁となっていた KeySQL の開発へ < KeySQL の 3 大特長 > フロントエンドに Excel を採用 対エンドユーザー 対システム開発者 SQL を GUI 化 マクロを自動生成 6
機能 1995 年 11 月 R2.5 第 1 部 > バージョンの変遷 発売から 10 年 バージョンアップを重ね累計 100 万本を超える販売実績 D&D 操作 副問い合わせ Win95 NT / Excel95 ダイレクトコール Excel2000 対応 1999 年 5 月 R4.0 マルチユーザ対応 OS 認証対応 WinXP 対応 Win2000 対応 2000 年 9 月 R4.1 2002 年 6 月 R4.2 2003 年 12 月 R5.0 ダイレクト SQL 入力 Win3.1x / Excel5.0 1996 年 6 月 R3.0 KeySQL 発売開始 Win3.1 / Excel4.0 1993 年 4 月 R1.4 1994 年 10 月 R2.0 1997 年 2 月 R3.1 1997 年 8 月 R3.2 1998 年 9 月 R3.3 Oracle9i Oracle 10g Oracle8 / 8i Oracle V7 現在 7
第 1 部 > 他ツールとの比較 Microsoft Query - クエリの作成と Excel への貼り付けにおける比較 - * 検索項目の選択画面 手動で結合条件を設定後 項目同士を結ぶ線が表示される リストから表と列を選択 検索条件を設定 * Excel 貼り付け時 クエリの結果を表示 クエリの自動実行 ボタンでクエリを再編集 条件の変更の度に自動実行されるので 動作が非常に重くなる場合がある Excel 貼り付け時に MS Query の画面は一度終了してしまう 8
第 1 部 > 他ツールとの比較 Microsoft Access - データの更新における比較 - 編集中はペンのマークが表示される * テーブルの追加画面 リストからテーブルを選択 テーブルのリンク 別の行にカーソルを移動するタイミングでデータの更新が確定される カーソルを別の行に移動しただけで メッセージ等の予告も無くリンク先のテーブルに更新が反映されてしまう トランザクション操作 ( コミット ロールバック ) ができないので 操作ミスにより誤ってデータを更新してしまう危険性がある 9
第 1 部 > KeySQLの優位性 Microsoft Query 複雑な検索条件の設定には不向き 更新機能はない ひとつの画面で検索条件を直感的に設定できる! 表名 列名をわかりやすい名前に変更できる! 表の内容と検索結果を簡単に参照できる! Microsoft Access 操作ミスをしても即時にデータベースに反映されてしまう 使い慣れた Excel のシート上でじっくり修正できる! シートのコピーで修正前の状態をバックアップできる! 不意の操作ミスによる更新を取り消すことができる! 10
第 1 部 > KeySQL R5.0が実現するもの より使いやすいインタフェースへ 以前のバージョンからユーザ インタフェースを大幅に見直したことで ドラッグ & ドロップ主体のより直感的な操作を可能にしました 最新の環境への対応 OS は Windows98 から XP まで Excel は 97 から 2003 まで幅広くサポート Oracle Database は 8i から最新の 10g まで対応しています クロス集計によるデータ分析 データ分析に最適なクロス集計に対応 単純集計ではわからなかったデータの傾向を把握でき VBA マクロによる分析ツールの作成にも威力を発揮します その他にも便利な機能が多数追加されました 第 2 部で詳しくご紹介します 11
第 2 部 KeySQL R5.0 を 使いこなす! 12
第 2 部 > 検索操作の基本 KeySQL の起動とログイン スタートメニューもしくは Excel の起動ボタンから KeySQL を起動し ログイン画面で必要項目を指定してデータベースへログインします ワンクリックで起動 一発起動ボタン KeySQL をインストールすると Excel のツールバーにボタンが追加されます ネットサービス名をリストから選択 パスワード以外の項目は 一度指定すると次回ログイン時に入力項目が保存されています 13
第 2 部 > 検索操作の基本 メインウィンドウの構成 操作の基本となる メインウィンドウ の構成です より直感的に操作して頂けるよう R4.2 から GUI を大幅に改善しました メニューバー ツールバー テーブル一覧 ワークスペース 検索項目がひとめで分かる! R4.2 と比べて下さい! ツリー状だから探しやすい! 検索項目リスト プロパティウィンドウ 条件リスト 14
第 2 部 > 検索操作の基本 テーブル内容の確認 今回は例として SCOTT の EMP 表を使用します テーブル一覧 から SCOTT スキーマの EMP 表を選択し ( テーブルプレビュー ) ボタンを押すとテーブル内容を参照できます テーブルプレビュー 検索条件を設定する前にテーブルの中身を簡易的に参照でき便利です 15
第 2 部 > 検索操作の基本 テーブルの全データを検索 表の全ての列を選択項目に指定するには テーブル一覧 で目的の表を選択し そのまま 検索項目リスト へドラッグ & ドロップします 表を選択してドラッグ & ドロップ EMP 表の全ての列が検索項目に指定されました マウス操作で項目の並べ替えや削除も簡単 16
第 2 部 > 検索操作の基本 Excel への検索結果の貼り付け ( 検索実行 ) ボタンを押すと Excel が自動的に起動し 検索結果が シートに貼り付けられます このまま使い慣れた Excel を使用して レポートやグラフ作成などを手軽に行って頂けます オートフォーマット自動適用 ( 作業状態設定による ) Excel 貼り付け時に自動的に適用されます またオートフィルターの適用も可能です SELECT * FROM EMP 17
第 2 部 > 検索操作の基本 検索条件の指定 条件リスト に条件としたい項目をドラッグ & ドロップし 必要に応じて演算子を変更してから 定数部 ( 右辺 ) に値を入力します 様々な演算子を選択可能 18
第 2 部 > 検索操作の基本 検索結果のプレビュー 検索条件を設定し ( 検索プレビュー ) ボタンを押すと 検索結果をプレビュー画面で確認できます 検索プレビュー Excel に貼り付ける前に結果を確認することができるので 大変便利です SELECT * FROM EMP WHERE JOB = SALESMAN AND SAL BETWEEN 1000 AND 1500 19
第 2 部 > 検索操作の基本 複数テーブルの結合 (1) 外部キー制約が設定されているテーブルを テーブル一覧 から ワークスペース にドラッグ& ドロップすると 参照先のテーブルと表同士を結ぶ線が自動的に表示されます リレーション表示 外部キー制約が設定されていなくても同じ項目名であれば 項目同士を結ぶ線が自動的に表示されます 表を選択して ワークスペースへ 20
第 2 部 > 検索操作の基本 複数テーブルの結合 (2) 表同士を結ぶ線上で右クリック メニューから 表結合条件へ追加 (A) を 選択するだけで 表結合条件を簡単に設定できます SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP, DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO <SQL99 準拠での表記 > SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP JOIN DEPT USING (DEPTNO) SELECT EMP.ENAME, DEPT.DNAME, DEPT.LOC FROM EMP JOIN DEPT ON (EMP.DEPTNO = DEPT.DEPTNO) 21
第 2 部 > 検索操作の基本 検索条件の再利用 設定した検索条件を KeySQL マクロファイル として保存しておけば ファイルを読み込むだけで いつでも同じ条件で検索が行えます 読み込み 名前を付けて保存 22
第 2 部 > 更新操作 データの追加 表の全列を検索項目に指定し 一度検索実行して結果を Excel に貼り付けます 新たに追加したいデータを入力し Excel の行番号を指定して追加実行すると データベース上のテーブルが更新されます 行番号を指定して追加 追加するデータを入力 INSERT INTO DEPT(DEPTNO, DNAME, LOC) VALUES (50, 'PLANNING', 'TOKYO') INSERT INTO DEPT(DEPTNO, DNAME, LOC) VALUES (60, 'SUPPORT', 'OSAKA') 23
第 2 部 > Excel マクロ Excel マクロの自動生成 Excelで実行可能なExcelマクロ (VBA) のコードを自動的に生成できます Excelマクロには2 通りの生成モードがあり ダイレクトコールを使用すれば KeySQLを内部的に使用してデータ検索を行うマクロを生成できます 通常の場合 Excel DB KeySQL コマンドのやりとり 実行時に KeySQL が起動 ダイレクトコール使用 Excel DB KeySQL の提供する DLL コマンドのやりとり KeySQL が起動しないから処理が高速 VBA マクロのコードがクリップボードに貼り付けられます 24
第 2 部 > Excel マクロ Excel アプリケーションの作成 複雑なコーディングが一切必要ないので プログラミングの知識がない方にも ボタンひとつでDBへのログインからデータ検索 ログアウトまでの一連の動作を行うアプリケーションを手軽に作成して頂けます VB Editor を起動して 挿入 標準モジュール にコードを貼り付けます 後はボタンにマクロを登録するだけ!KeySQL を起動しなくても ボタンひとつで検索実行できます 25
第 2 部 > 機能紹介その他便利な機能 SQL 表示 / ダイレクトSQL 入力 ワークシートの設定内容から 組み立てられる SQL 文を表示します ボタン SQL 文を直接入力し 実行できます SELECT 文以外にも CREATE, DROP, ALTER 等の DDL も実行可能です ボタン Point SQL 文を確認しながら 条件を設定できます Point SQL 文を直接入力することができるので システム管理者の方などに便利です 26
第 2 部 > 機能紹介その他便利な機能 CSV / HTMLファイル出力 Excel だけでなく CSV / HTML 形式のファイル出力もサポート より汎用的な形式でのデータ出力ツールとしてもお使いいただけます リストから出力形式を選択 CSV 形式 HTML 形式 27
第 2 部 > 機能紹介その他便利な機能 クロス集計 R5.0 からの新機能として データ分析に最適なクロス集計に対応しました 複数の項目に着目することで 単純集計ではわからなかったデータの傾向を把握できます 表頭項目 表側項目 集計項目 検索条件 クロス集計 (Cross Tabulation) とは? 与えられたデータのうち 2~3 個程度の項目に着目してデータの分析や集計を行なうこと 1 or 2 個の項目を縦軸 ( 表側 ) に もう 1 個の項目を横軸 ( 表頭 ) において表を作成して集計を行なう 28
第 2 部 > 機能紹介その他便利な機能 テーブルグループ / オーナーグループ あらかじめ必要なテーブルやテーブルの所有者を グループとして登録しておくことができます グループを指定してログイン 必要なテーブル ( テーブルの所有者 ) のみを登録 Point 必要なテーブルのみが表示されるのでまぎわらしくなく またログイン時間も短縮できます 29
第 2 部 > 機能紹介その他便利な機能 ローカル別名 表名 項目名に対し ローカル (=KeySQL 上 ) でのみ通用する別の名前をつけることができます 用途がわかりにくい名前の表に対して意味のある別名をつけることで 操作性が格段に向上します 表の別名を登録 列の別名を登録 SQL 表示では実名で表示されます Point わかりやすい日本語の別名で表示されるので テーブルの用途がひとめで理解できます 30
第 2 部 > 機能紹介その他便利な機能 表結合候補の追加 / 除外 ワークスペース上で同じ項目名同士は線で結ばれ 右クリックで簡単に表結合条件を設定できます そこで項目名は異なっていても常に表結合の条件にしたい項目同士を 追加候補 に また項目名は同じでも常に表結合の条件にしたくない項目同士を 除外候補 として登録しておくことができます 表結合の候補としたい項目同士を登録 < 売上データ > < 商品マスタ > Point 項目名が異なっていたり 外部キー制約が設定されていなくても 表結合候補として表示されます 31
第 2 部 > 機能紹介その他便利な機能 インポート / エクスポート 以下の各機能の設定内容を インポート / エクスポートすることができます テーブルグループオーナーグループローカル別名表結合候補 エクスポート ファイル 配布 インポートすることで同じ同じ設定に!! バックアップ Point 他の KeySQL ユーザとの間で 各機能の設定を共有できます 32
第 3 部 KeySQL の身近な活用例 33
第 3 部 > Case1: マスタメンテナンスの場面で マスタメンテナンスの問題点 日々発生するテーブルの修正作業でお困りではありませんか? システム部門の悩み 細かな修正を頼まれてばかりで 情シス部門の負荷が高い! 一部のテーブルは担当者自身でメンテナンスして欲しい 更新用画面を修正しなくてはならないが 開発に工数がかかる 現場担当者の悩み いちいち情シス部門にお願いしていると 修正までに時間がかかるのが不満! Access のリンク機能だと うっかり操作ミスをしないかが心配 更新用画面からだと 1 画面 1 レコードしか修正できないので効率が悪い 34
第 3 部 > Case1: マスタメンテナンスの場面で KeySQL の更新機能で解決 KeySQL の更新機能とその他の機能を組合わせることで 担当者自らが 安心してメンテナンスを行える環境を提供できます テーブルプレビュー更新をすぐに確認 日常業務で使い慣れた Excel だからこそわかりやすい! 簡単安全に更新できる! ローカル別名わかりやすい日本語名に テーブルグループ必要な表のみを表示 更新したくない項目をチェックしてミスを防ぐ 修正前にシートをコピーしてバックアップ 35
第 3 部 > Case2: 営業状況の集計場面で 営業状況の集計における問題点 日々の営業状況の集計でお困りではありませんか? 現場担当者の悩み 日報 月報など営業状況の報告書を作成するのに いちいち帳票からエクセルに入力し直している もっと本来の業務に注力したい! 違う見方をしたいのだが 新しい帳票はすぐには開発してもらえない 売上データを多角的に分析することで今後の販売戦略をたてたいが 本格的な BI ツールの導入には時間もコストがかかる 業務アプリの帳票は項目が多すぎて そのまま使うことができない 現場の人間に本当に必要な情報がなかなか得られない 36
第 3 部 > Case2: 営業状況の集計場面で KeySQL の Excel マクロ生成機能で解決 KeySQL のマクロ自動生成機能と Excel の持つ豊富な機能を組合わせることで 営業状況を自動的に集計 分析し 共有するツールを容易に作成できます マクロ自動生成開発の工数を大幅削減 マクロの実行を OS でスケジューリングして 日報作成を自動化 HTML 形式で保存すれば イントラで簡単に情報共有 ダイレクトコール KeySQL を起動せずに検索可能なマクロを生成 クロス集計商品別地区別に集計 Excel だからグラフ化による分析も自由自在 現場が必要とする自在な形式の帳票が出力できる! 37
おわりに > セミナーのまとめ とにかく操作が簡単 SQL 文の知識がなくても ドラッグ & ドロップで直感的に検索条件を指定 使い慣れた Excel に取込めるから データの集計や加工も自由自在です 業務を効率化できる マクロファイルに保存することで いつでも同条件でデータ検索が可能 VBA マクロも自動生成できるから アプリケーション開発も容易です 現場主導で使える 現場の担当者自身で 日々発生するマスタテーブルの更新を安全に行ったり 必要とするレイアウトの帳票やデータ分析ツールを作成できます 38
おわりに > ご挨拶 本日のセミナーはいかがでしたか? 今回 R5.0にて大幅なGUIの改良を行いましたが 今後ともお客様のご要望を取り入れて より使いやすいツールを目指し開発を行っていく所存です OTNからR5.0の体験版および操作ガイドがダウンロードできますので この機会にぜひお試しください http://otn.oracle.co.jp/software/products/keysql/ KeySQLが皆様の情報資産を有効に活用するための一助となれば幸いでございます 39
ご清聴有難うございました 40