>psyche さん
ご要望いただき、ありがとうございます。
自動保存について検討させていただきますが、無題のウィンドウが複数あったりすると保存する場所を決めるのが難しそうです。
oedit に自動保存の機能をつけていただけると助かります。
oeditは軽量で矩形選択なども楽なため、メモ代わりにも使用しているのですが、保存が面倒で無題のままにしています。この状態でユーザー切り替え画面にいると、WindowsUpdateが走ってOSが再起動し、未保存のデータが消えてしまうので悩んでいます。(そもそも保存せよ、OS再起動を抑止せよという話かもですが…)。
希望としては、定期的にデータが保存日時とともに自動保存されてほしいです。ファイル名がない(無題の)場合も保存してほしく、また、ファイル毎に保存を分けていただきたいです。
ご多用のところ不躾な要求で失礼しますが、oeditの代替が見つからないので、ご検討の程よろしくお願いいたします。
>みりんさん
ご質問いただき、ありがとうございます。
osqledit 9.6.6.0で@コマンドでSQLファイルを実行するときの引数に対応しました。
外部ファイルを実行する場合sqlplusだと引数として&1とか記載していると引き渡されますが、osqleditで引数付きの実行をすることはできますか?
引数の無いファイルは@で実行できましたが、下記の様に引数をつけると実行できませんでした。
@param_silent.sql "100" "200
よろしくお願いします。
>たむら さん
ご要望いただき、ありがとうございます。
検討させていただきます。
>おがわ さん
迅速にご対応頂きましてありがとうございます。
9.6.5.1にて問題がないことを確認しました。
今後も活用させていただきます。
以上、よろしくお願い致します。
osqleditを超絶に愛用しています!
このたび、psqleditデビューしました。
設定ファイルのini化(レジストリを使用しない)設定を、
Osqleditと同様Psqleditにも機能追加していただけると嬉しいです!
>名無し さん
説明いただきありがとうございます。
osqledit 9.6.5.1で修正しました。
>おがわ さん
ご返事を頂きありがとうございます。
>同じファイル名でsave_fileを実行
各テーブル名のファイル名としていますので、
重複はしていません。
下記に記載しておりますが、ファイルが読み込み専用で開くことしか
できないことから、closeする箇所の漏れ等は考えられないでしょうか。
以下長くなりますが、例を表記致します。
---SQL実行---
@xxxx.sql ←一度に複数テーブルをバックアップするようにSQLとsave_fileをまとめているSQLファイル
---xxxx.sql内容---
!save_file Aテーブル.txt 1 0 1 SJIS CRLF
@Aテーブル.sql
!save_file Bテーブル.txt 1 0 1 SJIS CRLF
@Bテーブル.sql
!save_file Cテーブル.txt 1 0 1 SJIS CRLF
@Cテーブル.sql
---Aテーブル.sql内容---
SELECT * FROM Aテーブル;
※Bテーブル.sql、Cテーブル.sqlも同様
ver.9.6.4.6以前の挙動
Aテーブル.txt
及び
Bテーブル.txt
はカラム名及び検索結果が保存されている。
Cテーブル.txt
は0kbでファイルにそのままアクセスすると読み込み専用で開くことになり、
ファイル内容は空。
※OSqlEditを閉じるとCテーブル.txtは開くことができるが、ファイル内容は空
ver.9.6.5.0の挙動
Cテーブル.txt
はカラム名及び検索結果が保存されている。
Aテーブル.txt
及び
Bテーブル.txt
は0kbでファイルにそのままアクセスすると読み込み専用で開くことになり、
ファイル内容は空。
※OSqlEditを閉じるとAテーブル.txt、Bテーブル.txtは開くことができるが、ファイル内容は空
ご確認のほどよろしくお願い致します。
>名無し さん
save_fileコマンドの件、同じファイル名で複数回save_fileコマンドを実行しているでしょうか?
前回の修正でsave_fileコマンドが複数実行される場合には、現在開いているファイルに出力結果が正しく保存されるようにファイルをcloseする処理を追加していますが、その後同じファイル名でsave_fileを実行すると空のファイルが作成されるので、以前の内容が消えてしまいます。
OSqlEditのバグ報告です。
ver.9.6.4.6にてsave_fileのコマンド修正をして頂いておりますが、この対応後に検索結果が末尾以外が保存できなくなっております。
具体的に申し上げますとsave_fileコマンドを複数回打つように@でsqlファイルと組み合わせたsqlファイルで、以前は最後のファイル以外は保存できていましたが、該当バージョン以降は最後のファイルのみ保存できるようになっております。
ご確認のほど、よろしくお願い致します。
バージョン:9.6.5.0
os:windows7 32bit
oracle12c
早速の対応ありがとうございました。
9.6.5.0でキーワード補完が行えること確認しました。
大変助かりました。
>Ryo さん
ありがとうございます。
対策について検討いたします。
先ほど投稿したキーワード補完の件、ALL_ARGUMENTSの仕様が12cで変更となっているようなので、これが原因かと思います。
引数が無いPROCEDUREの場合、11gではPOSITIONが1、ARGUMENT_NAMEがNULLで抽出されていましたが、
12cでは抽出されなくなったようです。
osqleditのキーワード補完で、引数が無いprocedure(functionは問題無し)が補完されません。
Oracle 12c(私の環境は12.1.0.2.0)で発生しており、11gでは発生しません。
osqleditのバージョンは手持ちで一番古いver.9.5.6.2と最新のver.9.6.4.7で試してみましたがいずれも同様です。
可能であれば対応をお願いいたします。
>Orator さん
ご報告いただき、ありがとうございます。
今後のバージョンアップで修正したいと思います。
OSqlEdit への要望です。
列名やテーブル名に、小文字が含まれている場合
(両端を " で囲む必要がある場合)の動作について:
BLOB 列を含むテーブルに対して
「オブジェクトのソースを取得」を実行した場合、
TABLESPACE 指定の LOB 句において、列名が " で囲まれないようです。
(CONSTRAINT の PRIMARY KEY などは正常に囲まれています)
対応を御検討ください。
割とどうでもいい追記です。追加で試したこととして、以下のことが分かりました。
・バグが発生しても、問題が発生するのはそのタブのみで、別のタブを見てみても問題は発生していない(ただし、別のタブに移って問題のタブに戻っても、バグは存在したまま)。
・そのタブを上書き保存しても、バグは維持されたまま(=折り返し設定を変えるまたはウインドウサイズをわずかでも変えることが、現状分かっている唯一(二つ)のバグフィックス法です)。
そのタブは、毎日割と長文を書いては消してをしている、超長時間開きっぱなしのタブです(ただし、いらなくなった部分は消しているので、常に大量の文が存在しているわけではありません。また、開いている時間としては他のタブも同様だったりしますが…。そのタブは雑記帳的なものとして用いているため、編集頻度が他の開きっぱなしのタブより群を抜いて激しい、という感じです)。
大した情報でもないですが、バグ追求の何かの参考にでもなっていれば幸いです。
おがわさん
どうもありがとうございます。
やはり決定的な条件が分からないと厳しいですよね。
利用OSはWindows7、IMEは、何と言えばいいのか分からないですが、特に新たにインストールすることもなく、デフォルトのWindows (Office?) のIMEを使用しています。
タブが15個程度常時開かれたままで、OSはもちろんずっと再起動もすることなくスリープだけしている状況です。
やはり、ウィンドウサイズ・文字列の折り返しが間違いなく関わっているバグかと思うのですが(これらをいじると一時的に直るため)、どうでしょうね。
ちなみに以前otbeditをずーっと起動していたら、いくつかのキーボードショートカットを設定した機能が働かなくなることもありました(例:高度な操作-大文字に変換など)。ちなみに右クリックからは機能したので、機能自体が死んだわけではなく、キー設定が反映されなくなったのかな、と思っていました。
もちろんotbeditを再起動したらキーボードショートカットも機能するように戻りました。
ずっと起動し続けていると、何らかの問題が生じるのかもしれないですね。しかしそれが分かっていつつも、面倒くさがりなので、ずっと開いたままな日が続いている感じです。
ということで、恐らく長時間起動による何らかのリソース不足がきっかけとなり、文字列折り返しに潜在する問題が表面化しているのかな、などと思っています。あ、ちなみに、バグ発生中でも、1バイト文字では問題なく入力されることは確認済みです。
何かピンと来る点があって修正いただければ大変幸いですが、恐らく自分の環境が劣悪なせいであり、また一時的なバグフィックスも極めて容易なので、そんなに本腰を入れていただく必要なのない問題かとも思います。
いずれにせよご対応いただき本当にありがとうございました。
>aさん
報告いただきありがとうございます。
再現する条件を特定できていないため、修正は難しいかもしれません。
参考までに、ご利用のOSとIMEを教えていただけないでしょうか。
追記です。昨日の今日でまたバグが発生しましたが、今確認したら、右端での折り返し点において、入力中に2行に渡る際には問題が発生しないようでしたが、折り返された行でカーソルを左端に持っていった場合、バグが確認されました(=行頭じゃなくても、行内でも、左端であれば問題が発生する、ということです)。
また、バグ発生中に、『右端で折り返す』から『指定桁数で折り返す』に変更した所、問題は消失しました。即『右端で折り返す』に戻しても、既にバグは直っていました(しかし、またしばらくしたら発生すると思われます)。
当面、バグが出たらCtrl+2→3と連打してバグフィックスしようと思います(デフォルトのキー設定じゃないかもしれませんが、それらに『指定桁数で折り返す』『右端で折り返す』が設定されている感じです、説明不要かと思いますが)。
otbedit(バージョンアップをサボっており、6.3.4.5なんですが、履歴を見たら関連の修正はない気がします。いずれにせよ近い内またアップデートしておこうと思いますが…)を使っているのですが、再現条件が全く不明なのが悩ましいのですが、長時間起動させっぱなしにしていると、画面左端(行頭に限らず)で文字列入力状態になると、入力した文字列が画面上に表示されないバグが発生します。
やや説明が難しくて分かりにくくて恐縮ですが、まず、入力カーソルが入力画面左端に存在するとします。ここで文字を入れると、通常一文字ごとに文字が表示され、スペースを押すと変換できるわけですが、このバグ発生下では、「文字が一切表示されない」「スペースを押しても変換候補すら現れない」「しかしバックグラウンドでは変換が行われており、Enterキーを押すと、変換後の文字列が入力確定・表示される(しかし、変換候補は完全にブラインドなので、たまに望みの変換になっておらず入力し直す必要があります)」「ただし、左端以外では一切問題が発生しない」「行頭じゃなくても、右端で折り返し設定などでカーソルが左端に戻ってくると、同じ状況になる(はずです。定かではないですが、確かそんな記憶があります。今ちょうど次の方法でバグを直しちゃったんで、確認できない状況です。バグが発生するタイミングが不明なのですぐにできないのが残念なんですが、2-3日に1回はなっている気もします)」「バグ発生時の直し方は、ウィンドウサイズを変更すると、直ることもある」…といった感じです。
個人的に、よく新しいタブを開いて、通常は「右端で折り返す」設定なのですが、そのタブのみ「折り返さない」設定にすること、あとはウィンドウサイズを変更することもよくあるんですが、その辺りに原因があるのではなかろうかと推測しているのですが、全く定かではありません。
致命的なバグではないものの、何気に不便でもあるので、修正いただけると大変嬉しく思います。
素晴らしいソフトを本当にありがとうございます。非常に重宝しています。
おがわさん
ついでにですが、
現在はpsqleditはPostgresqlに、ではなく、amazonRedshift向けに利用しています。
なので、今後そちらの用途としてもどんどん活用増えると思いますので、
今後とも、バージョンアップ等よろしくお願いいたします。
おがわさん
早速のご対応ありがとうございます!!
めっちゃ嬉しいです。
やっと、使い慣れたSQLエディタに戻れるぅ〜
欲を言ってしまいますと、
接続先一覧の一番左側にあると嬉しかったですが、
そのぐらい全然我慢できます。
ありがとうございました!
>松浦 さん
ご要望いただき、ありがとうございます。
psqledit 4.0.2.0で接続情報に名称を設定できるようにしました。
osqleditもpsqleditもとても使い心地がよく快適に使わせて頂いております。
ただ1つお願いがあり投稿いたします。
psqleditの接続情報に論理名を付けて、接続先を選択するときに、
間違えないようにしやすくしたいのですが、
改良お願いできませんでしょうか。
otbeditをご利用いただき、ありがとうございます。
ファイルリストについては、前回終了時の状態を覚えておく機能は
ありません。毎回、ドライブ名のみの表示で開始されます。
使用プログラム名を忘れました。otbeditです。
ファイルリストを使用してフォルダ・ファイルを操作していますが、
プログラムを停止し、再度立ち上げたときにリストはドライブ名だけに
なってしまいます。
使用状態時の表示で立ち上げる事は出来ないのでしょうか?
ご教示ください。
おがわさん
お世話になっております。
迅速なご対応ありがとうございます。
今後も活用させていただきます。
以上宜しくお願いいたします。
>おかださん
報告いただき、ありがとうございます。
ご指摘のとおりflushできていない箇所がありました。
osqledit ver.9.6.4.6で修正しましたので、こちらをご利用ください。
お世話になります。
既出であれば申し訳ございません。
仕事にて開発及び大量データのCSV出力に利用させていただいております。
1点、!save_fileコマンドにて教えて下さい。
【事象】
!save_fileコマンドで200万件程のcsv出力を幾つかのテーブルで実施後、
!exit_programで終了するスクリプトを組んでいます。
その際、!exit_program直前の!save_fileコマンドにてデータが
全て出力されていないといった事象が発生しており、
対処として、出力対象ではないテーブルのデータを最後に出力しています。
!save_file時にflush仕切らず終了する等の事象はあるのでしょうか。
【環境】
OS :Windows7 64bit
OracleCL:バージョン 9.2 32bit
OSqlEdit:バージョン 9.5.6.6
以上宜しくお願いいたします。
ながぐつさん、再度本当にありがとうございます。
最短マッチ…あ、昔ちょっとかじった時にインターネットで見たことある言葉だ!…と思わず進研ゼミばりに驚きと喜びの入り混じった喚声を上げてしまいましたが、そういうことだったんですね。この辺の情報処理は本当に役に立つので、ちゃんと復習して自分のものにしておきます。
フリーズしたり、理解を超える挙動を示したりといった点は、多分自分の不勉強から来るものだと思うので、時間が出来たらちょっと腰をすえて取り組んでみようと思います。
繰り返しですが何度も本当にありがとうございました…!
>aさん
*?の?は、最短マッチです。この辺りから勉強を始めると良いと思います。
[]は、ハマり易いので、正規表現に慣れない内は避けた方が無難です。
(^.*\n)*?の括弧を取り除いてしまうと、*?は、\nにしか適用されません。
連投すみません、大したことない追記です。
まず[]と()ですが、[]は 『どれか1つにマッチ』 というのがキーポイントなんでしょうかね…?
勝手に「ヒットした後もさらに下流を[]内のいずれかの要素で検索し続けてくれる」と思ったのですが、どうもそうではない模様…?(でも最初の書込みでAUTHORS[.\n]*でAUTHORSしかヒットしなかったことの説明にはなっていない…?さらに言うと、AUTHORS[.\l\S\n]*で複数行検索できていたので上記推測も間違っていそうですね)
…と、その辺はただ混乱しているだけといいますか落ち着いて自分で勉強すべき点なので放っておいていただければいいんですが、報告したかったのはもう一つの疑問点、「検索文字列内の?」ですが、試しに?を外して検索してみた所、最初の書込みで言っていたような「なぜか最初の方のヒットすべき文字列は無視されて、最後の方にある文字列からヒットする」という現象が再現されました(=例として紹介したリンクからダウンロードできるファイルで再現)。
…さらに、自分用の1万行を越えるファイルで?を抜かして検索実行した所、なんと、otbeditがフリーズしてしまいました…(再起動して何度やっても確実にフリーズします)。
以上最初の疑問も含め、どうも正規表現の検索というのは、何らかの脆弱性があるという感じなのでしょうか…?
ついでに今フリーズしてしまい、編集中だったファイルをいくつか失ってしまったので、ついでの形の要望になりますが、エラーで強制終了した場合等に「終了前の状況を再現する」という機能があればすごく嬉しいと思いました。
恐らくかなり大掛かりな機能で、アプリケーション自体もOfficeのように重くなったりしそうなので、必ずしも絶対あった方がいいかと言われると難しいですが、実装されたら多分ありがたいことの方が多いかな、と無責任に提案してみます。
長々と失礼しました。
ながぐつさん、アドバイスありがとうございます。
…おぉぉ〜、来ました来ました、完璧に望みの挙動が得られました…!
正直、「なぜ []じゃなくて()なんだろう…? 『*?』の?はなんのためにあるんだ?」という疑問や、前回書き込んだものの挙動は果たしてバグなのか?(あるいは記述した「おかしな挙動」はどの環境でも再現されるのか)…等々疑問はつきませんが、ちょっとぐらい自分で勉強して解決を試みる努力をしてみようと思います。
非常に有用なアドバイスをご提供いただき本当にありがとうございました!!
>aさん
こんな感じでどうでしょうか?
^\s*AUTHORS.*\n(^.*\n)*?^FEATURES\s*Location/Qualifiers\n
色々至らない点があったのでちょっと追記です。
まずファイルは.gbという拡張子の普通のテキストファイルで、otbeditにて編集しています。
検索結果について、色々やっててごっちゃになってしまったんですが、
AUTHORS[.\l\S\n]*
での検索ではQualifiersまでではなくファイルの末尾までがヒットします。
ちなみに AUTHORS[.\l\S\n]*Qualifiers で検索した結果は、最後から3つ目の遺伝子からヒットするのは変わらずですが、検索ヒットの終わりは最後の遺伝子のQualifiersになります(その後もセクションは少し続くのですが、(当然ですが)Qualifiers以後の文字列はヒットしません)。
試しに今AUTHORSをLOCUSに変えてみたところ(遺伝子情報はLOCUSという項目から始まります)、状況は変わらず(=最後から3つ目の遺伝子のLOCUSからヒット)でした。
また、ちょっと試しにかなりの行数を削除してから試してみたのですが、それでも常に「最後から3つ目の遺伝子の検索セクションからヒット」という結果になりました。
確実に何かがおかしい気がするのですが、どうなんでしょうね…?
ファイルを上げるのが手っ取り早いと思ったので、もしよければ試してみていただけると幸いです。
…といっても自分のファイルはやや研究内容の含まれるファイルだったので、例として以下から同じ形式のファイルのダウンロードが出来るのでリンクを載せておきます。
www.ncbi.nlm.nih.gov/nuccore/?term=%22Human%22[Organism]+AND+%28rrna[filter]+OR+trna[filter]%29
検索結果上部右側のSend To:から、Fileを選び、FormatをGenBankにしていただければ件のファイルになります。
お手間おかけして申し訳ないですが、何か分かる方いらっしゃったら情報いただけると非常に嬉しいです。
ほぼ単なる質問に近い形で申し訳ないのですが、もしかしたらバグかもしれないと思い質問&報告させていただきます。
遺伝子情報のデータベースからダウンロードしたファイルがあり、このファイルの中身は多数の遺伝子情報を含んでおり、各遺伝子情報はいくつかのセクションをもっています(LOCUS, DEFINITION, REFERENCE などなど)。
この内、不要なセクションを一括削除したく思い、正規表現を用いた置換を行っているのですがどうにも思うような挙動をしません。
例えば、
「AUTHORS Zody,M.C., ...複数の著者... [改行]
(何行か改行を含んで著者やその他のセクションが続く) [改行]
FEATURES Location/Qualifiers」
という複数行から成る項目をまるっと削除したいのですが、
AUTHORS[.\n]*
あるいは
AUTHORS[.\S]*
で検索した所、なぜかAUTHORSという文字列しかヒットしません。そして
AUTHORS[.\l]*
だとAUTHORSと続く3文字のスペースが、そしてもっとも不思議なことに、
AUTHORS[.\l\S\n]*
で検索すると、なぜか最後から3番目の遺伝子のAUTHORSから一番最後のQualifiersまでがヒットします。
(具体的には上記の部分が選択状態になり、選択を解除すると、最後から3つの遺伝子のAUTHORSで始まる行のみ(改行マーク含む)がハイライトされている状態になります(検索でヒットした文字列は赤でハイライトする設定になっています)。各遺伝子にAUTHORSで始まる行は2つあるのですが、どちらの行もハイライトされています)
特に最後の検索では、全ての遺伝子に同じ構造のAUTHROSセクションが含まれているはずなのに、それらが全くヒットしないのが不思議です。
このファイルの遺伝子は60数個、行数は10300行とかそこらで、上記の「最後の3つの遺伝子」は9800行目あたりからになっています。
どうも何らかのバグのせいなんじゃないかと思えてならないのですが、論理的思考力に乏しいため、あり得ない勘違いをしているだけの可能性もあります。
とりあえず自力でも削除できる量なので自力で消そうと思いますが、将来手動では不可能な量の置換をしたい時のために、何か間違っている点あるいはアドバイスありましたら、ご教示いただけると大変幸いです。
長々と申し訳ないですがよろしくお願いします。
>しゃかいさん
Windowsのコマンドで
taskkill /im osqledit.exe
を実行すると、osqleditを終了させることが出来ます。
これをスケジュール実行すればいいと思います。
>otbedit数年目 さん
ご要望ありがとうございます。
上書き機能について、検討させていただきます。
また、現在のバージョンでもマクロを使えばできるとは思います。
ありがたく使わせてもらっております。
自動で上書き更新する機能とかつけられないものですかね?
たまに書き溜めたデータを一日分くらい消してしまって
泣いたりしてるんですけど。
いつも使わせて頂いています。本来のSQLエディターとしての機能ではないのですが、
自動セッション切断機能(時間等指定)、自動終了機能をご検討頂けないでしょうか。
私が使用している職場ではセッションをつなぎっぱなしにしていると注意を受けることが良く有ります。
確かに他の人がOracleに関する作業をやろうとしてセッションを確認すると、やりっぱなしで帰ってしまっているとセッションを切ってよいのかわからないとのこと。
私としては23:00迄には帰宅するのでそんな時に忘れていてもセッションを切る、自動終了したらいいなぁと考えています。
本来の機能要望ではありませんが、汎用的に利用するための機能としてご検討いただけないでしょうか。
> 安藤 さん
ご要望いただき、ありがとうございます。
ワードラップの動作について、検討させて頂きます。
otbeditを利用させていただいております。
ワードラップ機能に関してですが、和英混合文のとき文末に長い英単語が来てもワードラップしません。その英単語の前に半角スペースを入れるとワードラップします。単語の前に半角を入れなくてもワードラップするエディタも多いようです。
あああああああああABCDEFGHIJ ワードラップしません。
あああああああああ ABCDEFGHIJ ワードラップします。
できれば、改善していただきますと、ありがたいです。
>はせさん
ご要望いただき、ありがとうございます。
insert文の生成機能について、検討させていただきます。
psqleditについて
osqleditのように、結果からINSERT文の生成ができるように機能の追加はできませんでしょうか。
宜しくお願い致します。
>あ さん
osqledit 9.6.4.1で、マクロ実行時のステータスバーの表示について改善しました。
>かめい さん
!save_fileでUTF8のBOMなしを指定することについて、osqledit 9.6.4.1で
対応しました。UTF8Nで指定できます。
>やなぎ さん
ご利用いただき、ありがとうございます。
psqleditについて、ペースは遅いですが開発を継続するつもりです。
いつもosqledit,psqleditを使わせて頂いています。
psqleditはなかなか更新されませんが今後更新される予定はありますでしょうか。
コマンドの!save_fileでUTF8のBOMなしを指定することはできるでしょうか?
>あ さん
ご報告いただき、ありがとうございます。
マクロ実行時のステータスバーの表示について、調査してみます。
>やすさん
osqlgridのファイル→テーブル選択メニューで、テーブル選択ダイアログ右下に
あるデータをロックするのチェックボックスを外すと排他ロックしないように
なります。
一度このチェックボックスを外すと、再度チェックをつけるまで、このモードが
維持されます。