■SI Object Browser 掲示板


ユーザの皆様、開発者、サポート担当者の交流のための掲示板です!

ユーザーの皆様同士で教え合ったりもできる交流の場にしたいと思っていますので、相互協力をよろしくお願いします。
なお、過去に同じようなQ&Aがあるケースも多いので、投稿前にキーワード検索してみてください。

discussion
※各投稿のカラーは対象となる製品に対応しています。【■…OB ■…OBER ■…全般 ■…その他】
※ライセンスに関するお問合せにつきましては、お問い合わせページよりご連絡いただきますようお願いいたします。
※誹謗中傷や公序良俗に反する書き込みはご遠慮ください。運営側の判断によりメッセージを削除する場合があります。
※環境依存や技術的調査が必要な問題については掲示板上ではお答えしかねます。ご了承ください。

よくある質問(FAQ)

検索オプション 矢印

~
リセット
新規投稿
SQL Server・Oracleに対してリバース機能だけを使用する場合、
最低限必要となるSQL Server上のユーザにはどの権限を付与すればよろしいでしょうか。
セキュリティの観点からsysadminは付与せずに最低限必要な
権限のみ付与したいと考えております。

また、フォワード機能についても同様にどの権限を割り当てれば
使用可能になりますでしょうか。

こんにちは
山田@SIです。

お問い合わせいただきました件について、下記のとおりに回答いたします。

 Oracleの場合、基本的には接続権限、SELECT権限、DELETE権限、CREATE権限、ALTER権限
 (データ生成を使用する場合はINSERT権限)が必要となります。
 上記動作が、テーブル、ビュー、インデックス、制約、テーブルスペースに行なえるような
 権限設定をお願いいたします。(selectはディクショナリテーブルも含める)

 他のDBにおいても基本的に上記権限が必要となります。

何卒、よろしくお願い申し上げます。
Object Browser ERのドメイン登録数に制限はありますでしょうか。
ある場合は何件になりますでしょうか。
こんにちは
山田@SIです。

お問い合わせいただきました件について、下記のとおりに回答いたします。

 物理的な限界は2147483647(カウントに用いている変数の限界値)ですが、
 実際にはもっと少ない数でハングアップします。
 その実際の値ですが、マシンスペックに大きく影響されるため、
 これという数値はお答えすることができませんが、
 近年のモデル(intel core2 2.4G以上 1~2G程度のメモリ)の環境下では、
 およそ2000程度のドメインを作成してもパフォーマンスの低下やハングアップなどの
 症状は確認できませんでした。数百程度ならもう少し下のスペックであっても
 問題はないと思われます。


何卒、よろしくお願い申し上げます。
OB 9.1.0.0

Ver9とVer10のMERGEのSQLテンプレートが間違っているようですので、
修正をお願いします。

「WHEN NOT MATCHED THEN INSERT SET (」と記述していますが
「WHEN NOT MATCHED THEN INSERT (」が正しいと思います。
こんにちは
後迫@SIです。

このたびは返信が遅くなってしまい申し訳ございません。

ご指摘いただいた通り、テンプレートの記述に誤りがございました。
誤りがあり、大変申し訳ございません。

いただいた点に関しましては、
次回バージョンアップにて修正させていただきますので、
何卒、よろしくお願いいたします。
回答ありがとう御座いました。
お世話になっております。

SQLテンプレートウインドウでコマンド・句・関数を調べる際、
ツリー内の語句を選択すると、右側の説明領域にカーソルが移動してしまい、
語句を色々調べたいときに不便です。
ツリー内にカーソルを留め、キーボード操作できたほうが便利かと思いますが、
いかがでしょうか?

個人的な意見ですが、ご検討いただければと思います。

以上
こんにちは
後迫@SIです。

ご要望いただきありがとうございます。

現状ではご指摘いただきました通り、
常に右側のペインにカーソルが移動するようになっていますが、
左側のツリー項目をクリックした際などはカーソルを移動せず、
引き続きツリー項目を検索できるなどの対応を検討させていただきますので、
何卒、よろしくお願いいたします。
ReadOnlyを使って、レコードの抽出を活用しています。
以下のような条件で抽出を使用しようとしていますが、このような煩雑な抽出条件に
対して、対応方法はあるのでしょうか?
ぜひヒントをいただきたいです。

TableName
X Y A1 A2 B1 B2 C1 C2 D1 D2
抽出条件
If X=D2 And Y=D2 Then
K=1               
ElseIf X=D2 And Y=C2 Then
K=C1
ElseIf X=D2 And Y=B2 Then
K=B1*C1
ElseIf X=D2 And Y=A2 Then
K=A1*B1*C1
ElseIf X=C2 And Y=D2 Then
K=1/C1
ElseIf X=C2 And Y=C2 Then
K=1
ElseIf X=C2 And Y=B2 Then
K=B1
ElseIf X=C2 And Y=A2 Then
K=A1*B1
ElseIf X=B2 And Y=D2 Then
K=1/B1*C1
ElseIf X=B2 And Y=C2 Then
K=1/B1
ElseIf X=B2 And Y=B2 Then
K=1
ElseIf X=B2 And Y=A2 Then
K=A1
ElseIf X=A2 And Y=D2 Then
K=1/A1*B1*C1
ElseIf X=A2 And Y=C2 Then
K=1/A1*B1
ElseIf X=A2 And Y=B2 Then
K=1/A1
ElseIf X=A2 And Y=A2 Then
K=1
Else
End If
こんにちは
後迫@SIです。

お問い合わせいただきました件についてですが、
接続先のOracleが8.1.6以上でしたら
以下のようにCASE文を使用して抽出が可能ですので、
お試しいただけますでしょうか。

select *
from TableName
where K = case
when X=D2 And Y=D2 Then 1
when X=D2 And Y=C2 Then C1
when X=D2 And Y=B2 Then B1*C1
・
・
end

また、もしOracleのバージョンが8.1.5以下でしたら、
CASE文は使用できないため、以下のように
AND,ORで条件をつなげていただく必要がございます。

where ((X=D2 And Y=D2) And (K=1)) or
((X=D2 And Y=C2) And (K=C1)) or
((X=D2 And Y=B2) And (K=B1*C1)) or
・
・

何卒よろしくお願いいたします。

ありがとうございました。
問題解決になりました。
Object Browser ReadOnly Edition 9.0.1.4を使用しております。

DB情報を設定し、接続ボタンを押すと、下記のエラーメッセージが表示されました。

「モジュール'ob9.exe'のアドレス004C801F でアドレス00000024に対する読み込み違反がおきました」

TNSNAMESとSQLNETは、使用できていた設定ファイルをコピーしています。原因についてご教授いただけますでしょうか。

よろしくお願いいたします。
こんにちは
後迫@SIです。

このたびは返信が遅くなってしまい申し訳ございません。

お問い合わせいただきました件についてですが、
以下の方法にて、Oracleホームを明示的にしていただき
接続できるかどうかご確認をお願いしてもよろしいでしょうか。

1.「ツール」メニューの「オプション」画面を開きます。
2.「詳細設定」タブを開き、「ORACLE_HOME」に
  Oracleホームのパス(フルパス)を設定後、
  「OK」ボタンを押します。
3. Object Browserを一度終了し、再起動します。

また、上記を実施しても解決されない場合、
Object Browserの「ヘルプ」メニューにあります
以下の追加情報をいただきたいのですがよろしいでしょうか。

①SQL*Plusでは接続可能でしょうか?
②Oracleのバージョンを教えていただいてもよろしいでしょうか?
 (クライアントと、接続先サーバの両方のOracleバージョンを
 教えていただいてもよろしいでしょうか?)
③クライアントマシンにて複数のOracleをインストール
 しているということはありますでしょうか?

お手数をおかけしてしまい申し訳ありませんが、
何卒、よろしくお願い申し上げます。
お世話になっております。

Oracle Homeの設定を行いましたが、
解決できませんでした。
また、ヘルプを開こうとすると、
「コンパイルされたヘルプファイル(CHM)が見つかりませんでした。」
と表示されます。

①SQL*PLUSでは接続可能です。

②Oracleクライアントは、2つあります。
クライアント:9i(ADI付属のもの)
 接続先サーバー:10g (DBは11i)

クライアント:9.2(9iクライアントでインストールしたもの)
 接続先サーバー:調査中

③ ②のように、2つのバージョンが存在します。

よろしくお願いいたします。
OB Ver.10.3.0.0を使用しています。

過去に下記の不具合報告をしていますが、現バージョンでも修正されていないようです。

3882:テーブル定義情報でコメント編集を実行するとフリーズ
4378:プロシージャ実行時、エラーを表示するには?
4387:バインド変数使用のSQL実行後、編集モード切替でエラー
4401:FROMの前にタブがあるSELECT文実行後、編集モードでエ

先日、「【OB通信 Vol.29】2010年1月リリース!OBV10/OBERV6の最新機能をご紹介」
のメールニュースで2010年1月にObject BrowserのVersion 11がリリースされる
との連絡をいただきましたが、Version 10での対応は行っていただけないのでしょうか?
こんにちは
後迫@SIです。

返信が遅くなってしまい申し訳ございません。

ご報告の件につきまして開発側に確認したところ、
No.4401でいただいたSELECT文にタブが含まれている場合、
データ編集時にエラーになる件につきましては、
次回のVer.11にて対応する予定となっておりますが、
Ver.10ではパッチの公開の時期は未定となっております。

また、その他の不具合に関しましては修正困難のため、
最新のVer.11でも対応を見送っております。

ご希望に沿うことができず大変申し訳ございません。
Ver.11リリース後も引き続き修正を検討させていただき、
修正時はアナウンスさせていただきますので、
何卒、よろしくお願いいたします。

saitoです。

回答ありがとうございます。
対応可能なものは、OB10のマイナーバージョンアップでの対応を期待します。
よろしくお願いします。
データ生成の機能についてですが、ランダム文字列(全角)をMySQLに対して行ったところ、SJISらしき文字列でレコードが生成されていました。
フォワードエンジニアリングでテーブルを入れた際にもコメントがSJISで埋められているようですが、クライアントがラテンモードで接続しているようです。
文字化けを起こさないようにするにはどうすれば良いのでしょうか?
こんにちは
山田@SIです。

弊社製品 SI Object Browser ER は、SJISのみの対応となっておりますので、
キャラクタセットがSJIS以外の場合、文字化けを起こす可能性があります。

キャラクタセットをSJISに変更していただき、現象が解決するか
ご確認いただけますでしょうか。

何卒よろしくお願い申し上げます。
サーバエンコードはUTF8
クライアントエンコードはSJISでやってみました。

しかし、どうもSI ObjectBrowserがラテン文字コードモードで送っているようです。
ここが、SJISモードで送っていれば問題無いのですが・・・

フォワードの場合は、一番最初に作られるテーブルにプリSQLにて
SET character_set_client = sjis
を埋め込んでみたところ、期待通りの結果が得られました。

出来ればデータ生成の時にもプリSQLを送る方法があると助かるのですが
ぱっと見その様な機能がありませんでした。
何かプリSQLのようにSQLを強制的に送信する方法は無いでしょうか?

出来ればMySQLの設定時に接続時に送り出すSQLが設定できると良いのですが・・・
こんにちは
山田@SIです。

申し訳ございませんが、データ生成時に先行して
SQLを発行することはできません。

MySQLがインストールされたフォルダから(C:\Program Files\MySQL\MySQL Server 5.0 など)

my.iniを開き、[mysql][mysqld]などの下にある default-character-set
の値がSJISになっているかご確認いただけますでしょうか。

さらに、[mysqld]の
default-character-set = sjis
の下に
skip-character-set-client-handshake
を書き加えた後、MySQLを再起動し、現象が改善されるかお試しいただけますでしょうか。

よろしくお願い申し上げます。