■SI Object Browser 掲示板
|
ユーザの皆様、開発者、サポート担当者の交流のための掲示板です! ユーザーの皆様同士で教え合ったりもできる交流の場にしたいと思っていますので、相互協力をよろしくお願いします。 なお、過去に同じようなQ&Aがあるケースも多いので、投稿前にキーワード検索してみてください。 |
|
| ※各投稿のカラーは対象となる製品に対応しています。【■…OB ■…OBER ■…全般 ■…その他】 ※ライセンスに関するお問合せにつきましては、お問い合わせページよりご連絡いただきますようお願いいたします。 ※誹謗中傷や公序良俗に反する書き込みはご遠慮ください。運営側の判断によりメッセージを削除する場合があります。 ※環境依存や技術的調査が必要な問題については掲示板上ではお答えしかねます。ご了承ください。 | |
SQL文の実行は出来るが、クリップボード出力がエラーとなる。
2012/03/15 15:55
OB
1
kueda
user_tables の全テーブルのデータ件数が取得したくて、
以下のSQL文をSIOB-SQLで流しました。
SQLの結果表示までは、30秒で戻ってくるのですが、
結果エリアの「クリップボードへ出力」を実行すると、
15分以上戻ってきません。結局、書き込みエラー何とかになって、
制御は画面に戻ってきているようですが、カーソルがSQLのままです。
SQL文によっては、クリップボード出力が行えない場合があるんでしょうか??
回避策はありますか??
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
--SQL文の説明。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
--1. user_tables からテーブル一覧を取得
(SELECT table_name FROM user_tables)
--2. 取得したテーブル名を条件に加えて各テーブルのカウントを取得
('SELECT COUNT(*) AS C FROM '||table_name)
--3. DBMS_XMLGENパッケージ getxml 関数が 2の結果を XML 形式に変換
--4. SQL関数extractValue (x, 'path') を使って、3で作成した
XML DB 内の '/ROWSET/ROW/C' にセットされたカウント数を取得
--5. 4を TO_NUMBER で明示的に数値に変換。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SELECT
TABLE_NAME
,TO_NUMBER(
EXTRACTVALUE(
XMLTYPE(
DBMS_XMLGEN.GETXML('SELECT COUNT(*) AS C FROM '||TABLE_NAME)
),
'/ROWSET/ROW/C'
)
) AS COUNT
,SYSDATE
FROM USER_TABLES
;
以下のSQL文をSIOB-SQLで流しました。
SQLの結果表示までは、30秒で戻ってくるのですが、
結果エリアの「クリップボードへ出力」を実行すると、
15分以上戻ってきません。結局、書き込みエラー何とかになって、
制御は画面に戻ってきているようですが、カーソルがSQLのままです。
SQL文によっては、クリップボード出力が行えない場合があるんでしょうか??
回避策はありますか??
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
--SQL文の説明。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
--1. user_tables からテーブル一覧を取得
(SELECT table_name FROM user_tables)
--2. 取得したテーブル名を条件に加えて各テーブルのカウントを取得
('SELECT COUNT(*) AS C FROM '||table_name)
--3. DBMS_XMLGENパッケージ getxml 関数が 2の結果を XML 形式に変換
--4. SQL関数extractValue (x, 'path') を使って、3で作成した
XML DB 内の '/ROWSET/ROW/C' にセットされたカウント数を取得
--5. 4を TO_NUMBER で明示的に数値に変換。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
SELECT
TABLE_NAME
,TO_NUMBER(
EXTRACTVALUE(
XMLTYPE(
DBMS_XMLGEN.GETXML('SELECT COUNT(*) AS C FROM '||TABLE_NAME)
),
'/ROWSET/ROW/C'
)
) AS COUNT
,SYSDATE
FROM USER_TABLES
;
返信を投稿
OB
OBサポート
こんにちは。
OBサポートです。
クリップボードへの出力についてですが、Object Browserのグリッド上に
そのままデータが表示されるもの(文字列/数値/日付型)につきましては
特に制限はございません。
同一のSQLを弊社環境にて実行いたしましたが、結果表示およびクリップボード出力も
問題なく行うことができ、再現していない状況です。
しかしながら、SQLの実行に30秒程度かかること、クリップボードへの書込に
失敗するとのことからリソース不足が原因である可能性がございます。
お手数ですが、一度 「WHERE TABLE_NAME LIKE 'A%'」等、出力範囲を
絞っていただいた上、改善するかどうかご確認いただけますでしょうか。
何卒、よろしくお願いいたします。
OBサポートです。
クリップボードへの出力についてですが、Object Browserのグリッド上に
そのままデータが表示されるもの(文字列/数値/日付型)につきましては
特に制限はございません。
同一のSQLを弊社環境にて実行いたしましたが、結果表示およびクリップボード出力も
問題なく行うことができ、再現していない状況です。
しかしながら、SQLの実行に30秒程度かかること、クリップボードへの書込に
失敗するとのことからリソース不足が原因である可能性がございます。
お手数ですが、一度 「WHERE TABLE_NAME LIKE 'A%'」等、出力範囲を
絞っていただいた上、改善するかどうかご確認いただけますでしょうか。
何卒、よろしくお願いいたします。
返信を投稿
OB