thatsthat の回答履歴
- SQL-LOADERの逆のもの
先日SQL-LOADERについて質問させてもらいましたが、もう1つ教えて欲しいことがあります。 SQL-LOADERの逆のものはないのでしょうか? 200万件のテーブルのデータを、条件毎に高速エクスポート(固定長テキスト)したいのですが。 つまりSQL-WRITERというものは無いかな~、、、と、、、(笑) 最悪、PL/SQLで200万件をまわして、テキスト出力させようと思っていますが、多分時間が相当かかると思うので、、、、 なにか良い方法があったら教えてください。
- IMPORT処理速度
EXPORTされたダンプファイルをそのままIMPORTすると 数時間もかかってしまいます。(ORACLE9i)(エラーは出ません) 原因はあるテーブルの件数がかなりの件数に達しているためのようなのですが、IMPORT処理を速くする方法というのは何かあるのでしょうか? もしくはIMPORTする際にデータの範囲指定のようなことはできるのでしょうか?
- ベストアンサー
- fuliefulie
- Oracle
- 回答数1
- オプティマイザはどちらのモードで判断しているか調べる方法を教えてください。
今回急遽Oracle(8.1.6です。)の運用保守を担当する事になったものです。 ここ1ヶ月あたり自分なりに必死でいろいろ情報を 集めているつもりなのですがどうしても分からない事があります。 アクセスパスを選択するにあたり、 CBO,RBOの2種類があると理解していますが、 実際にその設定はどこに定義されているのでしょう? 現在どちらが採用されてアクセスパスが導かれているか を調べるにはどうすればよいのでしょうか? 実行されるSQLが使用しているテーブルや、IndexのANALYZEが 行われていたら自動的にCBOになるのでしょうか? それともヒント文を記載しなければCBOになるのでしょうか? どなたか教えてください。
- 正規表現のパターンに変数を指定したい
perlでパターンマッチを行う際、正規表現で行いますが、パターン文字列内に変数を指定したい場合はどうすればよいのでしょうか? if ($ENV{HTTP_USER_AGENT} =~ /$pattern/) { : } というようなことをしたいのですが、うまくいきません。 方法はありますでしょうか?
- オプティマイザはどちらのモードで判断しているか調べる方法を教えてください。
今回急遽Oracle(8.1.6です。)の運用保守を担当する事になったものです。 ここ1ヶ月あたり自分なりに必死でいろいろ情報を 集めているつもりなのですがどうしても分からない事があります。 アクセスパスを選択するにあたり、 CBO,RBOの2種類があると理解していますが、 実際にその設定はどこに定義されているのでしょう? 現在どちらが採用されてアクセスパスが導かれているか を調べるにはどうすればよいのでしょうか? 実行されるSQLが使用しているテーブルや、IndexのANALYZEが 行われていたら自動的にCBOになるのでしょうか? それともヒント文を記載しなければCBOになるのでしょうか? どなたか教えてください。
- where句中のtrim関数について
いつもお世話になっております。 今回は標題の件について、ご教授下さい。 カラム「XXX_CODE」はCHAR(3)の項目です。 この項目が半角スペース(△)のものを条件としてレコードを引き当てたいときに、以下のSQLではうまくデータが取得できません。 trim関数の使い方に誤りがあるのでしょうか。 ◆データ XXX_NO XXX_CODE -------------------------------- 111 100 222 △△△ 333 200 ◆SQL select XXX_NO from hoge where trim(XXX_CODE) = '' ◆結果 該当レコードなし (本来なら「XXX_NO = 222」のデータを取得したい) 初歩的なことかも知れませんが、ご回答頂ければ幸いです。 よろしくお願いいたします。
- where句中のtrim関数について
いつもお世話になっております。 今回は標題の件について、ご教授下さい。 カラム「XXX_CODE」はCHAR(3)の項目です。 この項目が半角スペース(△)のものを条件としてレコードを引き当てたいときに、以下のSQLではうまくデータが取得できません。 trim関数の使い方に誤りがあるのでしょうか。 ◆データ XXX_NO XXX_CODE -------------------------------- 111 100 222 △△△ 333 200 ◆SQL select XXX_NO from hoge where trim(XXX_CODE) = '' ◆結果 該当レコードなし (本来なら「XXX_NO = 222」のデータを取得したい) 初歩的なことかも知れませんが、ご回答頂ければ幸いです。 よろしくお願いいたします。
- 2次元配列のコピーについて
2次元配列のコピーについて質問があります。 $Aが元の2次元配列、$Bがコピー先だとして、 ${$A}[0..N][0..N]に値が入っているとします。 ここで、$Bの代入を、$B=$Aとやってしまうと、$Aと$Bが連動してしまいます。 ($Bが書き換わったのに$Aも書き換わる) これはなぜなのでしょうか。 また、$Bの代入を、配列を走査して foreach (0.. $#{$A}) { my ($i) = $_; foreach (0.. $#{${$A}[$i]}) { my ($j) = $_; ${$B}[$i][$j] = ${$A}[$i][$j]; } } とすれば問題ないのですが、あまりスマートだと思えません。 もっとスマートにコピーする方法はありますか?