FAQ(よくある質問)
DBArtisan7.2/RapidSQL7.2
[一般]
[Sybase]
[oracle]
[MicrosoftSQLServer]
[DB2]
一般
[1] DBArtisanをインストールするのに、「ローカル管理者特権」が必要ですか?
DBArtisan、RapidSQLのインストールには「ローカル管理者特権」が必要となります。 これはDBArtisan、RapidSQLをインストール時にインストーラーがレジストリの編集を行うためです。
[2] データソースの登録とはどういうことを意味しますか?
データソースの登録とは、環境内にある管理対象データベースとの接続情報をそれぞれ登録する機能です。
登録されたデータソース(データベースとの接続情報)は、レジストリ(システムやアプリケーションソフトの設定データが記録されているWindowsシステムが使用する データベース)に記録され、DBArtisan/RapidSQL起動時に毎回読み込まれ再利用されます。
参考
[カタログのデータソースの編集]ダイアログまたはデータソース登録ウィザードの2番目のステップで[自動接続(パスワードの保護と暗号化)(A)]チェック ボックスを アクティブにすることができます。この場合、データベースとの接続情報以外に、ログインIDとパスワードも(暗号化されて)保存されるため、サーバーに接続した際の ログイン情報等を入力し直す必要もなくなります。
[3] 自動探索機能とは何を行うためのものですか?
DBArtisanを初めて使用する場合、最初の起動時にDBArtisanはコンピュータ上のDBMS構成ファイルを検索し、そのライブラリの内容に基づいて 企業内のデータソースを自動的に見つけ出し、DBArtisanに登録します。アプリケーションを起動したあとにデータベースが追加された場合も、 データソース検索機能を使って登録されていないデータソースを検索する事が可能です。
[4] レジストリ設定をリモート マシンに格納できますか?
はい。データソース カタログをリモート レジストリに格納してから、個々のクライアント マシンによってアクセスできます。
このオプションを設定するには、[ファイル]-[オプション]メニューを選択し、[データソース]タブを選びます。[リモート レジストリ]ラジオ ボタンを選択し、 編集コントロールにリモート マシンの名前(前に2つの円記号を付ける)を入力します。
[5] 1つのサーバーに対して同時に複数の接続を確立できますか?
接続可能です。これには、次の方法があります。
- サーバーマシン上で稼動している1つのデータベースを、DBArtisanに複数個の別データソースとして登録が可能です。
この場合を含め、DBArtisanに登録する「データソース」名は必ず一意でなければなりません。例:サーバー名:MSSERVERを複数個のデータソースとして登録
1つ目のデータソースとして登録:MSSERVER_1 (一意の名称)
2つ目のデータソースとして登録:MSSERVER_2(一意の名称)
上記の登録を行い、それぞれのデータソースに接続可能です。 - 1つのマシンでDBArtisanの複数のセッションを同時に実行し、同じサーバーに対して複数のプロセスを同時に実行することができます。
[6] DBArtisanのデータソース登録ウィザードの[サーバー]ドロップダウン リストに入っている情報はどこから得られたものですか?
DB2の情報は32ビットODBCデータソース マネージャで確立された、DB2に関して登録されているすべてのODBC接続をスキャンすることによって得られます。
Microsoft SQL Serverの情報については、接続されているネットワーク内をスキャンします。(また、[クライアント ネットワーク ユーティリティ]で設定した情報からも読み込まれます。)
Oracleの情報はtnsnames.oraファイルから読み込まれます。Oracleサーバーを構成するには、Oracle添付のネットワーク設定ユーティリティを使用します。
Sybase SQL Serverの情報はsql.iniから読み込まれます。Sybaseサーバーは、SQLEDIT.exeまたはDSEDIT.exeを使って構成されます。
[7] テーブルへのINSERT文をスクリプトに抽出するには、どうしたらよいでしょうか?
DBArtisan/RapidSQLバージョン7.2から[INSERT文作成]機能が追加されました。
任意のテーブルを選択し、[コマンド]-[INSERT文作成]にて作成可能です。
[ファイル]-[オプション]メニューを選択し、[オプション]ダイアログを開きます。[DDLの抽出]タブをクリックし、 [複数ウィンドウへの抽出]チェック ボックスがオフになっていることを確認してください。
[9] データがあることがわかっているテーブル対して、エクスプローラ ウィンドウに正しい行情報が表示されません。
[8] 複数のオブジェクトを構成するDDLを単一のウィンドウに抽出するには、どうしたらよいでしょうか?
DBArtisanが、正確なテーブルの情報を得る為に、データベースサーバーがボリュームの内部レコードを更新するテーブルに対して、 Oracleの場合はANALYZE、SQL Server/Sybaseの場合はUPDATE STATISTICSの操作を実行しなければなりません。
行情報等に正しい情報が反映されていない場合それぞれ以下の操作が必要になります。
Oracleの場合、エクスプローラからテーブルを選択し、右クリックでコンテキスト メニューを表示し、[分析]をクリックします。
SQL Server、Sybase、DB2の場合、エクスプローラからテーブルを選択し、右クリックでコンテキスト メニューを表示し、[統計情報の更新]をクリックします。
[10] クエリーの結果セットを別ウィンドウ(ISQLウィンドウのタブ以外)に表示するには、どうしたらよいでしょうか?
[ファイル]-[オプション]メニューを選択し、[オプション]ダイアログを開きます。[結果]タブをクリックしてください。
[結果ウィンドウ]というラジオ ボタンのグループ内の[アタッチしない]オプションを選択します。DBArtisanは スクリプト ウィンドウとは別のウィンドウに結果セットを作成するようになります。
[11] エクスプローラ ウィンドウのオブジェクトをオブジェクト タイプではなく、所有者ごとに並べるにはどうしたらよいでしょうか?
データソースエクスプローラ ウィンドウの上部にある[エクスプローラ オブジェクトタイプ別]ボタンをクリックします。
エクスプローラの編成を変更するための選択項目を示すドロップ ダウン メニュー内の[所有者で編成(O)]をクリックします。
別の方法として、[ファイル]-[オプション]メニューを選択して、[オプション]ダイアログを表示し、[エクスプローラ]タブを選択します。
エクスプローラの編成を指定するためのラジオ ボタンのグループ内の[オブジェクト所有者で編成する(O)]をクリックします。
[12] システム オブジェクトをエクスプローラ ウィンドウに表示するには、どうしたらよいでしょうか?
データソースエクスプローラ ウィンドウの上部にある[エクスプローラ オブジェクト所有者別]または[エクスプローラ オブジェクトタイプ別]ボタンをクリックします。
エクスプローラにシステム オブジェクトを表示するかどうかを選択するためのドロップ ダウン メニューが表示されます。
別の方法として、別の方法として、[ファイル]-[オプション]メニューを選択して、[オプション]ダイアログを表示し、[エクスプローラ]タブを選択します。
エクスプローラの編成を指定するためのラジオ ボタンのグループ内の[システム オブジェクトの表示]というチェック ボックスをチェックしてください。
[13] 自分が所有するオブジェクトだけをエクスプローラ ウィンドウに表示するには、どうしたらよいでしょうか?
本機能はエクスプローラの編成が「オブジェクトタイプ別」の場合に利用可能となります。 データソースエクスプローラの表示状態が、「オブジェクトタイプ別」になっている状態で[エクスプローラ オブジェクトタイプ別]ボタンをクリックし、 ドロップダウンメニュー内の[自オブジェクトのみ表示(M)]をクリックします。
別の方法として、[ファイル]-[オプション]メニューを選択して、[オプション]ダイアログを表示し、[エクスプローラ]タブを選択します。
オブジェクト一覧チェックボックスグループ内の[自オブジェクトのみ表示する(M)]というチェック ボックスをチェックしてください。
[14] スキーマ抽出やスキーマ移行といった操作はスケジューリングできますか?
DBArtisan 7.2では、ISQLウィンドウの内容、SQLテキスト ファイル、各種オブジェクト作成時のウィザードで生成された[SQLのプレビュー]ウィンドウ内 のSQL等のスクリプトをスケジューリングすることは可能ですが、スキーマ抽出、スキーマ移行のスケジュールは対応しておりません。
将来のバージョンでは、抽出、移行、バックアップ、復元、レポートなどの複雑な操作もスケジューリングできるようになる予定です。
[15] 私の会社ではブラウザをNetscapeに統一しています。DBArtisanを実行するには、Microsoft Internet Explorerが必要ですか?
DBArtisanを実行する為にはInternet Explorer5.5以上の環境が必要です。
DBArtisanに必要なシステム要件の詳細は 「DBArtisan 7.2/Rapid SQL7.2 導入ガイド」をご参照ください。
[16] 私はNetscapeのユーザーで、MS IEはインストールしていません。状況依存ヘルプが利用できないのはなぜですか?
DBArtisanを実行する為にはInternet Explorer5.5以上の環境が必要です。DBArtisanに必要なシステム要件の詳細は 「DBArtisan 7.2/Rapid SQL7.2 導入ガイド」をご参照ください。
[17] DBArtisanはバージョン管理機能を持っていますか?
いいえ。しかし、Microsoft SourceSafe、PVCS、MKS Source Integrityによってデータベース プロジェクト管理とバージョン管理の 統合化を提供するRapid SQLという製品を提供しています。
[18] DBArtisanは、2000年問題に対応していますか?
対応しています。DBArtisanは、2000年1月1日以降も日付を正しく計算します。私たちは、コード ライブラリ全体を注意深く調べ、 アプリケーション内で日付データが使用されている場合、完全な日付情報が格納されていることを確認しています。
このため西暦2000年問題に関して当社の製品について何ら特別は処置を取る必要はありません。
[20] 私の会社では、Microsoft Task Scheduler以外のスケジューラ・ソフトウェア製品を使っています。会社のスケジューラをDBArtisanといっしょに使用するには、どうしたらよいでしょうか?
DBArtisan、RapidSQLバージョン7.2は、クライアントベースのMicrosoft Task Schedulerとのみ連携します。しかし、他のスケジューラのサポートも計画されています。
prodpost@jsys.co.jp宛に現在ご利用になっているスケジューラ ソフトウェアをお知らせいただければ幸いです。
[21] データのアンロードは、1回の操作で複数のテーブルに対してできますが、データのロードは、1回の操作で1つのテーブルにしかできません。なぜですか?
現在のところ、データ ロード ウィザードは1回に1つのテーブルのみをインポートできます。これは、将来のリリースでは改善され、 1回の操作で複数のテーブルをインポートできるようになる予定です。
[22] 全画面モードから抜けるには、どうしたらよいでしょうか?
DBArtisanを全画面モードにすると、小さなワンボタンの浮動ツールバーが作成されます。
全画面モードから抜けるには、このツールバーのボタンを押すか、[ESC]キーを押します。
[23] データ-ソースの登録で注意することはありますか?
データソースの登録に、データソース検索機能を使用した場合、DBArtisanは、\WINNTフォルダ(Windows98では、\windowsです。) のODBC.INIを編集します。
もし、他のアプリケーションが既に同名のデータソースを登録していた場合、DBArtisanが設定を上書きしてしまいますので、注意が必要です。
[24] ISQLエディタのフォントが見にくいのはなぜですか?
DBArtisan、RapidSQLをインストールした直後はフォントの設定が正しくされていない場合があります。
オプションの[エディタ] タブにある[エディタ フォント]ボタンをクリックし、[MS ゴシック] フォントを設定してください。
[26] トークン マッチング]のショートカットキー"Ctrl+]"キーが正常に機能しません。
ショートカットキーのみが表示どおりに動作しません。[メニュー]-[編集]-[トークン マッチング]をクリックして実行するか、{→}アイコンをご利用ください。
Sybase
[51] DBArtisanから「LIBSYBDB.dllをロードできません。32ビットOpen Clientがインストールされていないか、dllがパスにありません」というエラー メッセージが返ってきます。
このメッセージは、必要なSybase DB-Library LIBSYBDB.dllを探すために、DBArtisanがシステム パス全体を検索し、見つからなかったか、 関連するファイルがないためにロードできなかったことを示します。
DBArtisanがSybase 10または11サーバーに接続するには、このライブラリと関連するファイルが必要です。
これらのファイルは、32ビットSybase Open Clientをローカルにインストールし、SQL.INIファイルを構成することによって利用可能になります。
SQL.INIファイルは、Open ClientユーティリティのSQLEDIT.exeまたはDSEDIT.exeを使って構成しなければなりません。
接続を確立するには、SQLEDIT.exeとSYBPING.exeの両方から、またはOpen Client 11.xを使用している場合はDSEDIT.exeから サーバーに対してpingを実行しなければなりません。システム パスには、標準のOpen Client \BIN and \DLLサブディレクトリが含まれていなければなりません。
Windows NTで実行している場合、コントロール パネルから[システム]を選択し、[環境]タブでSybaseの環境変数を設定し、正しいOpen Clientディレクトリを 指定しなければなりません。
Windows 95で実行している場合、AUTOEXEC.batファイル内にSYBSET.batの呼び出しを記述しなければなりません。
すべてのコンポーネントが正しい場所にあると、DBArtisanはサーバーと接続できます。
[52] DBArtisanから「2つの端点を接続するためのNet-libプロトコル ドライバ呼び出しに失敗しました」というエラー メッセージが返ってきます。
このメッセージは、DBArtisanがSybase 32ビットDB-LibraryであるLIBSYBDB.dllを検出し、ロードしましたが、SQL.INIが正しく構成されていないか、 Sybase 32ビットOpen Clientを通じたサーバーとの接続が確立できないことを示しています。次のことを確認してください。
SQL.INIは32ビット エントリ(32ビットのnet-library、またはNLという文字で始まるnet-libraryを使用するエントリ)用に構成されていること。
SQLEDIT.exeとSYBPING.exeか、Open Client 11.xを使用している場合はDSEDIT.exeから、32ビット構成エントリに対してpingが実行できること。
WISQL32.exeからの接続が確立していること。
コントロール パネルから[システム]を選択し、[環境]タブでSybaseの環境変数が正しく設定されていること。
Windows 95で実行している場合、AUTOEXEC.batファイルにSYBSET.batの呼び出しがあること。
[53] Sybase 11.03サーバーに接続すると、エラー「このプログラムは無効な操作を実行しました。モジュールMFC42.dllで不正なページ障害が起こりました」というエラーが返ってきます。
- コンピュータ上でMFC42.dllを検索します。複数のインスタンスがあるはずです。修正日付とバージョンを調べます。
最も新しいのMFC42.dllが\windows\sys、\windows\sys32、DBArtisanフォルダに入っていなければなりません。 - これらのディレクトリに最新のMFC42.dllがない場合、古いファイルをリネームし、最新のファイルをこれらのフォルダにコピー&ペーストします。
コンピュータを再起動し、DBArtisanを再起動します。Sybaseサーバーに接続してみてください。
[54] データベース情報(配置、領域、オプション等)を見るには、どうしたらよいでしょうか?
この情報は、データベース エディタを使用して表示、変更できます。データベース エディタを開くには、次の手順にしたがってください。
- DBArtisanを起動し、Sybaseデータソースに接続します。
- データソースを展開し、データベース ノードを選択します。エクスプローラの右側のペインに利用可能なデータベースが表示されます。
- 対象とするデータベースをクリックします。データベース エディタが開き、複数のタブが表示されます。
[55] DBArtisanを使ってデータベースのダンプ/バックアップやロード/リストアを実行するには、どうしたらよいでしょうか?
対象とするデータベースをクリックします。データベース エディタが開き、複数のタブが表示されます。
- DBArtisanを起動し、Sybaseデータベースに接続します。
- データソースを展開し、データベース ノードを選択します。エクスプローラの右側のペインに利用可能なデータベースが表示されます。
- 対象とするデータベースを強調表示し、エクスプローラのツールバーにある[コマンド]ボタンをクリックします。
ドロップ ダウン メニューから[バックアップ]または[リストア]を選択します。ウィザードの指示にしたがい作業を実行してください。 - [ユーティリティ]-[データベースのバックアップ]メニューを選択するか、または[データベースのリストア]を選択します。ウィザードの指示にしたがい作業を実行してください。
- 適切なダンプまたはロード コマンドが表示され、進行状況を示すメッセージが出力ウィンドウに表示されます。
[56] ストアド プロシージャを実行するには、どうしたらよいでしょうか?
ストアド プロシージャを実行するには、まずエクスプローラ内で対象となるストアド プロシージャをダブルクリックし、プロシージャ エディタを開きます。
次に、エクスプローラのツールバーにある[コマンド]ボタンをクリックします。ドロップ ダウン メニューから[実行]を選択します。
別の方法として、エクスプローラでオブジェクトを右クリックし、カスケード メニューから[実行]を選択することもできます。
プロシージャ実行ウィンドウが開きます。このウィンドウには、プロシージャを正しく実行するのに必要なパラメータ フィールドがあります。
パラメータを入力し、[実行]ボタンをクリックします。指定されたパラメータを使ってプロシージャが実行され、結果が戻された場合、結果ウィンドウに表示されます。
[57] (sp_primarykeyとsp_foreignkeyを使用して宣言した)論理キーを表示、作成、変更、DROPするには、どうしたらよいでしょうか?
論理キーの表示、作成、変更、削除は、エクスプローラで対象とするテーブルをダブルクリックして、テーブル エディタを開きます。
次に、[制約]タブを選択します。論理キー(論理主キーと論理外部キーに分類されています)およびすべての制約(主キー、外部キー、一意キー、チェック制約)が フォルダ形式で表示されます。論理主キーまたは論理外部キー フォルダを強調表示し、制約リスト ボックスの左側にある[コマンド]ボタンを選択して、 編集や削除などの作業を実行します。
[58] テーブルを抽出しようとするたびに、「SYS DBでDB ID #の行が見つかりません」というエラーが発生します。
データベースのダンプとロードを実行すると、Sybaseシステム関数の一部が破壊され、誤ったdbidがアクセスされることがあります。
これは、RESTOREコマンド/操作によって起こるSybaseの既知のバグです。データベースのリストア操作によって、システム関数が破壊された場合、 sysreferencesテーブルにあるデータが誤ったものになり、SQL Serverは修正する術がありません。
SYBASE社は、ロードされたデータベースのsysconstraintsテーブルにある一部の制約がfrgndbidおよびpmrydbid列に誤った値を返すことを確認しています。
これらの列は、本来既存のデータベースdbidを持つべきですが、ロード操作が始まったデータベースのdbidを持っています。
Sybase社は、systableをtrueにし、sysconstraintsテーブルを更新して、frgndbidおよびpmrydbid列に正しいdbid値をいれる方法を推奨しています。
[59] ログインできません。
DBArtisan、RapidSQLをインストールした直後はSybaseサーバーに接続するためのクライアント文字セットが[iso_1]に設定されております。
オプションの[接続]タブにある[クライアント文字セット]を接続先のSybaseサーバーの文字セットと同じ文字セットに設定してください。
Sybaseサーバーの文字セットがSJISなど日本語環境の場合、予めSybaseクライアント側にJapanese言語パックをインストールする必要があります。 この場合、上記のクライアント文字セットは[SJIS]の設定となります。
[60] ダブルクォーテーションつきのデータベースが作成されてしまいました。
オプションの[接続]タブにある[引用符で囲まれた識別子を使用]にチェックが入っている状態でデータベースオブジェクトを作成すると ダブルクォーテーションつきのデータベースが作成されてしまう場合があります。
[引用符で囲まれた識別子を使用]のチェックをはずした状態でデータベースを作成してください。
oracle
[37] Oracleサーバーを登録するとき、データソースの接続文字列はどのように入力したらよいでしょうか?
Oracle 7.1または7.2に接続する場合、一般にホスト文字列全体を使用します。
t:servername:orcl
Oracle 7.3または8以降のデータベースに接続する場合、各バージョンのネットワーク設定ユーティリティを使用して別名を構成しなければなりません。
DBArtisanでデータソースを登録するときには同じ別名を使用します。
別名=Myalias
(各バージョンのネットワーク設定ユーティリティ)
DLL名 | Oracleユーティリティのバージョン | Oracleのバージョン |
---|---|---|
ociw32.dll Net* | Configuration Assistant | Oracle8i以降に付属 |
ORA803.dll | Net8 Oracle | Oracle8に付属 |
ORA73.dll | SQL*Net 2.3 | Oracle 7.3に付属 |
ORA72.dll | SQL*Net 2.2 | Oracle 7.2に付属 |
ORANT71.dll | SQL*Net 2.1 | Oracle 7.1に付属 |
ORA7NT.dll | SQL*Net 2.0 | Oracle 7.0に付属 |
[38] DBArtisanから「ORA 03121 No Interface Driver Connected - Function Not Performed(ORA 03121 接続されるインターフェース ドライバが存在しません。ファンクションは実行されません)」というエラー メッセージが返ってきます。
このメッセージは、DBArtisanがOracleのネットワーク接続用のライブラリを見つけ、サーバーに接続しようとしていることを示します。
通常、このメッセージは、ネットワーク接続用のファイル群に欠損や不整合等があるか、データソースの接続文字列が正しくない場合に表示されます。
次のことを確認してください。
DBArtisanは、インストールされた環境に設定されている環境変数(PATH)に記述されているフォルダ順にORA***.dll、OCI***dll等のネットワーク接続に必要なライブラリをロードします。
複数バージョンのORACLEクライアントがインストールされていて、環境変数(PATH)の記述で、古いバージョンのネットワーク設定用ライブラリが先に検出された場合、DBArtisanは最初に見つかったライブラリのコピーを使用します。
環境変数内(PATH)内に複数のORACLE関連フォルダが設定されていた場合、新しいバージョンのフォルダ名を古い物より先に記述してください。)
(接続に使用され、エラー発生時に表示されるファイル名一覧)
OCI*32.dll | Oracle8i以降に付属 |
ORA803.dll | Oracle 8に付属 |
ORA73.dll | Oracle 7.3に付属 |
ORA72.dll | Oracle 7.2に付属 |
ORANT71.dll | Oracle 7.1に付属 |
ORA7NT.dll | Oracle 7.0に付属 |
Oracle 7.3または8、8iサーバーや、9iサーバーと接続する場合、付属のネットワーク設定ユーティリティで別名を構成し、データソースに登録するときに使用します。
OracleのSQL*Plusユーティリティとの接続を確立し、サーバーとの接続を確認します。この場合、DBArtisanで使うのと同じ文字列を使用します。
[39] ORACLEデータソースに接続した際に、***.dllがロードできませんというエラーが出ます。
ORACLEデータソースに接続した際の、ORA***.dllがロードできません。もしくはOCI***.dllがロードできません。等のエラーは、Oracleと接続する為に必要なファイルが見つからなかった場合に表示されます。
DBArtisanがOracle 7.x、または8x以降のデータベースと接続するには、下記のファイルのうち少なくとも1つのライブラリとそれに関連するファイルが必要です。
DLL名 | Oracleユーティリティのバージョン | Oracleのバージョン |
---|---|---|
ociw32.dll Net* | Configuration Assistant | Oracle8i以降に付属 |
ORA803.dll | Net8 Oracle | Oracle8に付属 |
ORA73.dll | SQL*Net 2.3 | Oracle 7.3に付属 |
ORA72.dll | SQL*Net 2.2 | Oracle 7.2に付属 |
ORANT71.dll | SQL*Net 2.1 | Oracle 7.1に付属 |
ORA7NT.dll | SQL*Net 2.0 | Oracle 7.0に付属 |
[40] SQL*Net Easy Configによって別名を構成しましたが、接続しようとするとOracleリスナーで引き続きエラーが起こります。なぜですか?
ネットワークDNSに問題があり、サーバー名の解決ができていないことが考えられます。この場合DBArtisanはインスタンスを認識しない為接続エラーが発生します。
回避策としてOracle接続にIPアドレスを使用するようにします。
接続文字列をサーバーのIPアドレスに置き換えるには、次の手順に従ってください。
サーバーのIPアドレスは、予めネットワーク管理者に確認をしてください。
(下の例はサーバー(SERVERNAME)のIPアドレスが192.168.1.1であった場合の設定方法です。)
Tnsnames.oraファイルを編集します。このファイルは、通常はC:\ORANT\NETWORK(NET**)\ADMIN\か、クライアント ソフトウェアのインストール時に指定した場所にあります。
データソース名を探します。この例では、ORA80SERVERNAME.WORLDです。
(HOST = SERVERNAME) を (HOST = ipaddress)に置き換える必要があります。
書き換える前:
ORA80SERVERNAME.WORLD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = SERVERNAME)(PORT = 1521))
(CONNECT_DATA = (SID = ORCL))
)
書き換えた後:
ORA80BERLIN.WORLD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1521))
(CONNECT_DATA = (SID = ORCL))
)
ファイルを保存します。これで問題が解決するはずです。
[41] Oracleテキスト オブジェクト(プロシージャ、パッケージなど)に関するコンパイル エラーを表示するには、どうしたらよいでしょうか?
コンパイル エラーは、対応するオブジェクト エディタを開くか、オブジェクトをPL/SQLエディタ ウィンドウに抽出するか、オブジェクトをPL/SQLエディタで コンパイルすることで表示させることができます。
[42] どのロールが他のロールに付与されているかを見るには、どうしたらよいでしょうか?
[エクスプローラ]ペイン内の[ロール]をダブルクリックし、詳細を確認したいロールの名称をダブルクリックします。
ロールエディタが起動しますのでその中の[ユーザー/ロール]タブ内に付与されたロールの一覧が表示されます。
[43] アウトプット ウィンドウに「ORA-00942:表またはビューが存在しません」というOracleエラー メッセージが返ってきます。
このメッセージは、Oracleから返されて、DBArtisanの出力ウィンドウに表示されるメッセージです。
この場合、表またはビューが実際に存在しないか、DBArtisanが照会しようとしている表やビューの選択に必要な特権でログインしていないため、 DBArtisanからの照会がOracleによって拒否されています。
DBArtisanはSYS.DBA_xxxデータ・ディクショナリ ビューや動的パフォーマンスビュー(V$xxx)等を照会します。
DBArtisanを使用するユーザーは、DBArtisanが照会するすべての表に対するSELECT権限を持っていなければなりません。
例:
DBArtisanがV$PARAMETERという動的パフォーマンスビューを照会します。 ユーザーがこのビューに関するSELECT権限を持っていない場合、DBArtisanはエラーを返すため対象のビューに対するSELECT権限を取得しなければなりません。
この場合、V$PARAMETERという名称は、V_$PARAMETERというビューのパブリックシノニム(別名)の為、V$PARAMETER(シノニム)に対しては権限の設定をする事ができません。
動的パフォーマンスビューに権限を設定する場合、下記のようにV_$***ビューに対して権限の設定を行います。
GRANT SELECT on V_$PARAMETER to /*ユーザー名*/
DBArtisanが照会する仮想表の一覧
V$PARAMETER
V$SESSION
V$PROCESS
V$SQLTEXT
V$LOCK
V$DATABASE
V$LOG
V$SYSSTAT
SYS.V_$LOG_HISTORY
SYS.V_$STATNAME
SYS.V_$SESSTAT
SYS.V_$ROLLSTAT
SYS.V_$ROLLNAME
データ・ディクショナリ ビューの一覧
SYS.DBA_PROFILES
SYS.DBA_ROLES
SYS.DBA_FREE_SPACE
SYS.DBA_DATA_FILES
SYS.DBA_USERS
SYS.DBA_CLUSTERS
SYS.DBA_DB_LINKS
SYS.DBA-OBJECTS
SYS.DBA_INDEXES
SYS.DBA_CONSTRAINTS
SYS.DBA_ROLE_PRIVS
SYS.DBA_TAB_PRIVS
SYS.DBA_COL_PRIVS
SYS.DBA_SYS_PRIVS
SYS.DBA_TABLES
SYS.DBA_TABLESPACES
SYS.DBA_EXTENTS
SYS.DBA_ SEGMENTS
SYS.DBA_IND_COLUMNS
SYS.DBA_TAB_COLUMNS
SYS.DBA_COL_COMMENTS
SYS.DBA_SOURCE
SYS.DBA_ERRORS
SYS.DBA_OBJECT_SIZE
SYS.DBA_DEPENDENCIES
SYS.DBA_SYNONYMS
SYS.DBA_SEQUENCES
SYS.DBA_SNAPSHOTS
SYS.DBA_SNAPSHOT_LOGS
SYS.DBA_TRIGGERS
SYS.DBA_TRIGGER_COLS
SYS.DBA_TAB_COMMENTS
SYS.DBA_CONS_COLUMNS
SYS.DBA_VIEWS
SYS.DBA_DB_LINKS
SYS.DBA_ROLLBACK_SEGS
その他の表とビュー
SYS.FILEXT$
SYS.FET$
SYS.TS$
SYS.RESOURCE_COST
SYS.PRODUCT_COMPONENT_VERSION
SYS.LINK$
SYS.USER$
[44] プロセス モニターでプロセスに対してExplain Planを実行したら、エラー メッセージ「ORA-01039 insufficient privileges on underlying objects of the view(ORA-01039 ビューのもとになるオブジェクトに関する特権が不十分です)」が表示されました。なぜですか?
照会にあるすべての表とビューに対して正しいSELECT許可を持っていなければなりません。 これには、照会の中でビューが使用するベース表も含まれます。
[45] プロセス モニター ウィンドウでプロセスに対してExplain Planを実行したら、「ORA-00942: 表またはビューが存在しません」というエラー メッセージが表示されました。なぜですか?
表またはビューが自分のスキーマに属していない場合、Explain Planを実行しようとすると、このメッセージが表示されます。
SQL文を変更して表またはビューの名前に所有者を接頭辞として付けるか、ビューまたは表の所有者としてOracleにログインします。
[46] DBArtisanを使ってOracleシノニムに関する特権を付与したり、取り消すには、どのようにしたらよいでしょうか?
DBArtisanには、シノニム特権を管理するためのメカニズムはありません。
回避策として、ベース オブジェクトに関する特権を付与したり、取り消します。
[47] 表に関するDDLを抽出したとき、NOT NULL制約に関する構文が見えないのはなぜですか?
NOT NULL制約を表示しないのは、当社の開発者の判断です。
NOT NULL制約は、列を「not null」と宣言したときにOracleによって自動的に生成されます。
[48] ストアド プロシージャを実行するには、どのようにしたらよいでしょうか?
Oracleのストアド プロシージャを DBArtisan で実行するには、2つの方法があります。
- エクスプローラで対象となるストアド プロシージャをダブルクリックして、プロシージャ エディタを開きます。
エクスプローラのツールバーにある[コマンド]ボタンをクリックし、ドロップ ダウン メニューから[実行]を選択します。
プロシージャ実行ウィンドウが開きます。このウィンドウには、プロシージャを正しく実行するのに必要なパラメータ フィールドがあります。
パラメータを入力し、[実行]ボタンをクリックします。指定されたパラメータを使ってプロシージャが実行され、結果が返されたとき、結果ウィンドウに表示されます。 - [ファイル]-[新規作成]-[ISQLエディタ]メニューを選択してISQLエディタを開き、無名PL/SQLブロックを作成します。
実行したいストアドプロシージャを呼び出す文を作成し、PL/SQLエディタウィンドウのツールバーにある[実行]ボタンをクリックします。
指定されたパラメータを使ってプロシージャが実行され、結果が返されたとき、結果ウィンドウに表示されます。
[49] 小文字を使用したユーザー名でログオンできない場合があります。
[オプション]-[全般]-[オブジェクト識別子内で大文字小文字を保存する]にチェックが入った状態で自動接続の設定をしていると、 小文字(system以外)のユーザー名でログオンできなくなる場合があります。
自動ログオンを使用しない設定にするか、[オプション]-[全般]-[オブジェクト識別子内で大文字小文字を保存する]のチェックを外してください。
[50] JAVAのロードウィザード実行時にエラーがでてJAVAソース等のロードができません。
現在JAVAのロードウィザードは正常に機能いたしません。
*.java(ソースファイル)があれば、[ファイル]メニューの[新規作成]-[Javaファイル]をクリックし、ソースコードを入力後[作成]ボタンをクリックしてください。
MicrosoftSQLServer
[29] DBArtisanから「SQLバッファに空のコマンドを送ろうとしました」というエラー メッセージが返ってきます。
このメッセージは、DBArtisanがMicrosoftの32ビットdb-library NTWDBLIB.dllを検出し、ロードしたことを示しています。
しかし、このライブラリが使用する他のコンポーネントが正しく設定されていません。次のような原因が考えられます。
マシン上とパス内ににNTWDBLIB.dllのコピーが複数ある場合、DBArtisanがMicrosoftディレクトリから正しいバージョンをロードしているかを確認します。
DBArtisanは、このライブラリを見つけるために、システム パスを検索し、最初に見つかったコピーを使用します。
DBArtisanが他のディレクトリ(たとえば、\WINNT\system32)からライブラリをロードしている場合、他のバージョンをリネームして、Microsoftディレクトリに インストールされたバージョンだけが見つかるようにします。
サーバーは、Microsoft SQL Client Configurationユーティリティの[Advanced]タブで構成しておきます。
SQL Client Configurationユーティリティでサーバーが正しく構成されている場合、Microsoftの32ビットISQL_wプールを使ってサーバーとの接続を確立してみます。
List Serverボタンをクリックして、構成済みサーバーをすべてリストします。サーバーを選択し、適切なログインIDとパスワードを入力します。
ANSIからOEMへの設定をチェックし、Microsoft Client Configurationユーティリティにある国際設定を使用します。両方のオプションとも、チェックしておく必要があります。
これらの方法を実行しても解決しない場合は、32ビットMicrosoft クライアント ユーティリティをローカル マシンに再インストールします。
[30] DBArtisanから「NTWDBLIB.dllをロードできません。Microsoft32ビット クライアント ユーティリティがインストールされていないか、dllがパスに入っていません」というエラー メッセージが返ってきます。
このメッセージは、DBArtisanがMicrosoft DB-Library NTWDBLIB.dllを見つけるためにシステム全体のパスを検索し、他に必要なファイルがないために、見つからなかったか、 ロードできなかったことを示します。このライブラリと他の関連するファイルは、DBArtisanがSQL Serverと接続するために必要です。
これらのファイルは、Microsoft 32ビット クライアント ユーティリティをローカルにインストールし、[Advanced]タブを構成することによって利用可能になります。
DBArtisanが適切な接続情報を検索するには、標準のMicrosoft\BINまたは\BINNおよび\DLLサブディレクトリがシステム パスに入っていなければなりません。
[31] DBArtisanから「サーバーが存在しないか、アクセスが拒否されました。」というエラー メッセージが返ってきます。
このエラーが起こる原因はいくつか考えられます。レジストレーション ウィザードで入力したデータソースの名前が正しくない可能性があります。
サーバー名の入力が間違っていないかを確認してください。このエラーは、SQL Serverがダウンしている場合にも起こります。
SQL Serverが正しく動作しているかを確認してください。このメッセージは、デフォルトのnet-libraryまたはMicrosoft SQLクライアント構成ユーティリティに あるサーバー構成が正しく構成されていない場合にも表示されます。
DBArtisanはdb-libraryをロードしてから、net-libraryをロードします。
net-libraryはネットワーク上のサーバーに入っています。net-libraryは、サーバーのインストール時に設定されたサーバーのプロトコルに対応していなければなりません。
デフォルトのnet-libraryは、Microsoftクライアント構成ユーティリティの[Advanced]タブで正しく定義しなければなりません。
[Advanced]タブを構成する場合、次の点に注意してください。
サーバー名が正しいこと。
正しいプロトコルを選択していること。
アドレス文字列が正しいこと。
アドレス文字列は、選択したプロトコルに対応するフォーマットでなければなりません。
[32] データベース情報(配置、領域、オプションなど)を見るには、どうしたらよいでしょうか?
この情報は、データベース エディタを使用して表示、変更できます。データベース エディタを開くには、次の手順にしたがってください。
- DBArtisanを起動し、Microsoft SQL Serverデータソースに接続します。
- データソースを展開し、データベース ノードを選択します。エクスプローラの右側のペインに利用可能なデータベースが表示されます。
- 対象とするデータベースをクリックします。データベース エディタが開き、データベース情報に関する複数のタブが表示されます。
[33] DBArtisan を使ってデータベースのダンプ/バックアップやロード/リストアを実行するには、どうしたらよいでしょうか?
データベースのダンプやロードを実行するには、次の手順にしたがってください。
- DBArtisanを起動し、Microsoft SQL Serverデータベースに接続します。
- データソースを展開し、データベース ノードを選択します。エクスプローラの右側のペインに利用可能なデータベースが表示されます。
- 対象とするデータベースを強調表示し、エクスプローラのツールバーにある[コマンド]ボタンをクリックします。
ドロップ ダウン メニューから[バックアップ]または[リストア]を選択します。ウィザードの指示にしたがい作業を実行してください。 - [ユーティリティ]-[データベースのバックアップ]メニューを選択するか、または[データベースのリストア]を選択します。ウィザードの指示にしたがい作業を実行してください。
- 適切なダンプまたはロード コマンドが表示され、進行状況を示すメッセージが出力ウィンドウに表示されます。
[34] ストアド プロシージャを実行するには、どうしたらよいでしょうか?
ストアド プロシージャを実行するには、まずエクスプローラ内で対象となるストアド プロシージャをダブルクリックし、プロシージャ エディタを開きます。
次に、エクスプローラのツールバーにある[コマンド]ボタンをクリックします。ドロップ ダウン メニューから[実行]を選択します。
別の方法として、エクスプローラでオブジェクトを右クリックし、カスケード メニューから[実行]を選択することもできます。
上記の方法でプロシージャ実行ウィンドウが開きます。このウィンドウには、プロシージャを正しく実行するのに必要なパラメータ フィールドがあります。
パラメータを入力し、[実行]ボタンをクリックします。指定されたパラメータを使ってプロシージャが実行され、結果が戻された場合、結果ウィンドウに表示されます。
[35] プロセス モニターからプロセスに関するSQL文を表示すると、文が切り捨てられるようです。なぜですか?
DBArtisanは、この情報にアクセスするのにDBCC INPUTBUFFERコマンドを使用します。プロセスに関する情報の検索に使用する列は、 nvarchar(255)データ型に制限されています。
[36] データソースを登録し、SQL Serverのアカウントではなく、NTドメイン アカウントを使って、Microsoft SQL 7に接続できるようにするには、どうしたらよいでしょうか?
NTドメイン アカウントを使用して、Microsoft SQL Server(バージョン7)に接続できるようにするには、次の手順にしたがってデータソースを登録します。
- Microsoft SQL Serverドメイン アカウントのログインを作成します。ログインの作成には、DBArtisanのログイン ウィザードが使用できます。
- NT認証を使ってSQL Server 7接続している場合、ログインIDおよびパスワード フィールドが空のときは指定する必要はありません。 DBArtisanは、ユーザーのNTログオンで接続を試みます。データソース登録にアクセスするには、[データソース]-から[データソースの登録]メニューを選択します。 NT認証を使用するには、自動接続プロパティをONに設定し、ログインIDおよびパスワード フィールドを空のままにします。
DB2
[27] BArtisanは、DB2 AS/400、OS/390、AIX 6000、MVSと接続できますか?
Embarcadero Technologies社では、DBArtisanが、Windows NT あるいはAIXオペレーティング システム上で実行される IBM DB2 UDBバージョン 6以降に準拠することを保証しています。OS/390およびAS/400プラットフォーム上のUDBに対するサポートは今後追加される予定です。
[28] DBArtisanが接続できるのは、どのバージョンのUDBですか?
DBArtisanは、DB2 UDB Personal EditionのデータベースおよびWorkgroup、Enterprise、Enterprise-Extended Edition DB2 UDBのデータベースに 対する接続と管理が可能です。DB2 UDB Personal EditionとCAEコンポーネントがクライアント マシンにインストールされていなければなりません。
DB2 UDB Workgroup、Enterprise、Enterprise-Extended Editionのデータベースは、ネットワーク上の他のサーバーにインストールできます。
DBArtisanがローカル(DB2 Personal)データベースに対して実行できることと、ネットワーク上のDB2サーバーに対してできることには、一部機能上の違いがあります。
これは、ほとんどがDB2プラットフォームの機能の違いが原因です。
DBArtisan 5.4/RapidSQL 5.4
[DB2]
[Oracle]
[SQLserver]
[Sybase]
[一般]
DB2
[503] DBArtisanは、DB2 AS/400、OS/390、AIX 6000、MVSと接続できますか?
Embarcadero Technologies社では、DBArtisanが、Windows NT あるいはAIXオペレーティング システム上で実行されるIBM DB2 UDBバージョン 5以降に準拠することを保証しています。OS/390およびAS/400プラットフォーム上のUDBに対するサポートは今後追加される予定です。
[504] DBArtisanが接続できるのは、どのバージョンのUDBですか?
DBArtisanは、DB2 UDB Personal EditionのデータベースおよびWorkgroup、Enterprise、Enterprise-Extended Edition DB2 UDBのデータベースに対する接続と管理が可能です。DB2 UDB Personal EditionとCAEコンポーネントがクライアント マシンにインストールされていなければなりません。DB2 UDB Workgroup、Enterprise、Enterprise-Extended Editionのデータベースは、ネットワーク上の他のサーバーにインストールできます。DBArtisanがローカル(DB2 Personal)データベースに対して実行できることと、ネットワーク上のDB2サーバーに対してできることには、一部機能上の違いがあります。これは、ほとんどがDB2プラットフォームの機能の違いが原因です。
[505] DB2に接続しようとすると、さまざまなエラーが表示されます。接続には特別な特権が必要ですか?
DBArtisanはDB2に対するODBC接続をサポートしているため、IBM社がDB2 ODBCについて報告した数々のバグがあります。 https://www.ibm.com/developerworks/にアクセスして、DB2ドライバの最新パッチをダウンロードすることができます。DB2に対してDBArtisanを使用するのに特別な特権はいりません。照会は、すべてのユーザーが利用できるSYSCATビューに対して実行します。
Oracle
[515] Oracleサーバーを登録するとき、データソースの接続文字列はどのように入力したらよいでしょうか?
Oracle 7.1または7.2に接続する場合、一般にホスト文字列全体を使用します。
t:servername:orcl
Oracle 7.3または8に接続する場合、SQL*Net Easy ConfigユーティリティまたはOracle Net8 Easy Config(Oracle 8ユーティリティから)、もしくはその両方で別名を構成しなければなりません。そして、DBArtisanでデータソースを登録するときに、同じ別名を使用します。
Myalias
OracleのSQL*Plusを使ってサーバーに接続するときは、必ず同じ文字列を使用します。
[516] DBArtisanから「ORA 03121 No Interface Driver Connected - Function Not Performed(ORA 03121 接続されるインターフェース ドライバが存在しません。ファンクションは実行されません)」というエラー メッセージが返ってきます。
このメッセージは、DBArtisanが32ビットOracle SQL*Netライブラリを見つけ、サーバーに接続しようとしていることを示します。通常、このメッセージが表示されるのは、SQL*Netの他のコンポーネントがインストールされていないか、データソースの接続文字列が正しくない場合です。次のことを確認してください。
- DBArtisanは、必ずOracleホーム・ディレクトリからORA803.dll、ORA73.dll、ORA72.dll、ORANT71.dll、ORA7NT.dllのSQL*Netライブラリのいずれかをロードします。DBArtisanはシステム パスを検索して、これらのライブラリを(上記の順序で)探し、最初に見つかったコピーを使用します。パス内のOracleホーム ディレクトリより前に、これらのDLLの他のバージョンがないかを調べます。
- 正しい接続文字列を使用しているかを確認します。Oracle 7.1または7.2サーバーと接続する場合、ホスト文字列全体t:servername:orclを使用します。Oracle 7.3または8サーバーと接続する場合、SQL*Net Easy Configユーティリティで別名を構成し、データソースに登録するときに使用します。
- OracleのSQL*Plusユーティリティとの接続を確立し、サーバーとの接続を確認します。この場合、DBArtisanで使うのと同じ文字列を使用します。
[517] DBArtisanのエラー・メッセージ「Cannot load ORA803.dll, ORA73.dll, ORA72.dll, ORANT71.dll,ORA7NT.dll. Oracle's 32bit SQL*Net is not installed or the dll's are not in your path(ORA803.dll、ORA73.dll、ORA72.dll、ORANT71.dll、ORA7NT.dllをロードできません。Oracleの32ビットSQL*Netがインストールされない
このメッセージは、Oracle 32ビットSQL*Netライブラリ(ORA803.dl、ORA73.dll、ORA72.dll、ORANT71.dll、ORA7NT.dll)を探すために、DBArtisanがシステム パス全体を検索し、見つからなかったことを示します。DBArtisanがOracle 7.1、7.2、7.3、または8と接続するには、少なくとも1つのライブラリとそれに関連するファイルが必要です。これらのファイルは、32ビットOracle SQL*Netをローカルにインストールすることによって利用可能になります。DBArtisanが接続を確立するには、これらのライブラリのどれか1つがシステム パスにあれば十分です。各ライブラリは、それぞれのOracleのバージョンに対応しています。
DLL名 | Oracleユーティリティのバージョン | Oracleのバージョン |
---|---|---|
ORA803.dll | Net8 | Oracle8に付属 |
ORA73.dll | SQL*Net 2.3 | Oracle 7.3に付属 |
ORA72.dll | SQL*Net 2.2 | Oracle 7.2に付属 |
ORANT71.dll | SQL*Net 2.1 | Oracle 7.1に付属 |
ORA7NT.dll | SQL*Net 2.0 | Oracle 7.0に付属 |