A5:SQL Mk-2

開発のこと、日々のこと

松原正和

フォーラムへの返信

15件の投稿を表示中 - 1,336 - 1,350件目 (全1,611件中)
  • 投稿者
    投稿
  • 松原正和
    キーマスター

    ytさんこんにちは。

    Shift+DelによるNULLと”の切り替えですが、たとえば、Oracleでは”はNULLの意味なのでトグルできないように制御していますが…PostgreSQLなのですよね。
     
    なかなか再現できないのですが、具体的にはどのような動きになっているのでしょうか?。(たとえば、NULLにはなるが、何度Shift+Delを押下しても ” にならないとか)

    「別の手段で強引にNotNull項目に空白をセットしたデータを作成しそのレコードの別の項目を変更」の件ですが、A5:SQL Mk-2でテーブル内容を表示した後、別のツールで主キーを変更すると、A5:SQL Mk-2はその変更を認識できないので更新時にレコードを見つけることができず、「Update failed. Found 0 records」になってしまいます。

    松原正和
    キーマスター

    荒木さんこんにちは。
     
    例えば、サーバーの文字コードの種類と、CHAR型の長さがバイト単位なのか文字数単位なのか、などを指定するUIにすれば、それも不可能ではないと思うのですが、例えば、EBCDIC等はWindowsでは扱うのが難しかったり、パフォーマンス上の問題を引き起こしたり、文字コードを指定させるUI自体がおそらく利用上の混乱を招くような気がして、ちょっと難しい気がします。
     
    申し訳ありませんが、現状ではこれ以上は少しむつかしいかと思います。

    返信先: 接続エラーについて #3298
    松原正和
    キーマスター

    佐久間 大典さんこんにちは。
     
    「Unexpected server response:」ですが、PostgreSQLのプロトコルで、レスポンスの種類を表す1文字(1byte)のコードが想定された値と異なったときにおこるエラーのようです。
     
    本来は発生し得ないもののようですが、以前同じエラーで報告を頂いたこともあったのですが、この時はネットワークのインフラレベルの不調が原因と思われるということになりました。ネットワーク上でのデータエラーなどが想定されるようにも思います。
     
    あと、Keep Aliveが2秒というのはちょっと短すぎるような気がします。恐らく通常の操作にも影響が出る(レスポンスなど)のではないでしょうか?。もう少し長い値
    (20~30秒あるいはそれ以上)で良いと思います。

    返信先: 一括エクスポート #3267
    松原正和
    キーマスター

    Shunさんこんにちは。

    はい、現象を確認しました。次のベータ版で修正したいと思いますので少々お待ちください。

    松原正和
    キーマスター

    亀 行道さん、たかはしさん、Kazuさん、んさんこんにちは。

    はい、現象を確認しました。DBツリーを非表示にした場合不具合が起こっていたようです。

    次のベータ版 (Version 2.14.16)で修正したいと思います。

    松原正和
    キーマスター

    荒木さんこんにちは。

    「文字列右側をトリム」とは文字列型(CHAR, VARCHAR等)全てで、文字列の右側に付加されている半角空白を取り除きます。(ただし、それによって “” になってしまう場合はトリムしません)

    返信先: 2.13.3でのデータ文字化け #3229
    松原正和
    キーマスター

    よしあきさんこんにちは。

    データベースへの接続方式は何でしょうか?。直接接続を使っている場合、OCI経由での接続は試せますでしょうか?。インスタントクライアントなどでも構いません。
    https://www.oracle.com/technetwork/jp/topics/index-099943-ja.html

    あと、プラットフォーム不明のDBからインポートというのも気になります。なにか、マルチバイト文字が途中で切れてインポートされていたり、シフトアウト・シフトインの文字がなぜか残ってインポートされたりということはないでしょうか?。SQLのLENGTH()やLENGTHB()関数で取り込んだ長さがおかしくないか確認できますでしょうか?。

    松原正和
    キーマスター

    荒木さんこんにちは。
     
    CHAR型の項目に全角文字がある場合、余計な空白が付いてしまったりするのはなかなかに根が深い問題です。データベースによってCHARの長さが文字単位だったりBYTE単位だったり…当然文字コードも異なるのでなかなか完全には対応しにくい状況です。
     
    ちょっと妥協的な対応になりますが、「文字列右側をトリム」する機能を追加したいと思います。

    単一エクスポートの進捗ですが、プログレスバーではこれは実は難しいです。理由はエクスポートの際、「片方向結果セット」モードでクエリーを実行しますが、これは結果セット全体の件数を取得できないためです。何件出力したかは当然わかるのですが、全体件数が分からないのでプログレスバーでの進捗表示ができません。代わりに、ステータスバーを用意して、「テーブル名 : ○○ records.」を更新していく方式にしたいと思います。
     
    エクスポートの並び順ですが、一括エクスポートでは現状でもソートはしていません。理由はバックアップ等の目的なら並び順は関係ないですし、order byを付けないほうが速い可能性があるからです。
     
    あと、巨大なテーブルをエクスポートすると終わるまで応答が無くなる件ですが、こちらも対処したいと思います。(途中でキャンセルできるようにも)

    松原正和
    キーマスター

    小林さんこんにちは。

    はい、現象を確認しました。確かに1文字余計に実行していたようです。行単位の選択の場合、改行コードが含まれてしまうだけなので大丈夫だったのですが、SQL中のサブクエリーの実行など、文字単位の選択では1文字余計に選択されるのは致命的ですね。

    この3連休の間に出すのベータ版で対応したいと思いますので少々お待ちください。

    松原正和
    キーマスター

    亀 行道さんこんにちは。

    現象が起こっている A5:SQL Mk-2のバージョンはいくつでしょうか?。Version 2.13.3でMDIにかかわる、MDI子ウィンドウを切り替えたときに表示がおかしくなることがある不具合の対処をしているのですが…。もしかしてその不具合修正が悪さをしているのでしょうか。

    松原正和
    キーマスター

    博多太郎さんこんにちは。
     
     はい、Version 2.13.3でデータベースツリーとデータベースの追加と削除で並び順が変わってしまう問題を対処した際に、大文字小文字を区別せずにソートするようにしました。これのせいと思われます。
     
     ASCIIコード表で ‘_'(アンダーバー)はA~Zとa~zの間にはいる記号になっています。文字列の比較ロジックで大文字小文字を区別しない比較関数を使ったとき、小文字の英数字を大文字に変換して比較しているようです。

     このため、これまで ‘_'(アンダーバー)はa~zより前の扱いだったのが、大文字化されたためにA~Zの後の扱いになってしまい、並び順が変わったようです。
     
     どうしようかとも思ったのですが、’_'(アンダーバー)やその他いくつかの記号類は単語の区切りに使われたりすることが多いので、アルファベット(A~Z, a~z)より前の扱いにしてソートするように変更したいと思います。
     
     修正時期に関しては、今週末はベータ版が出せないので来週以降とさせてください。

    返信先: DBの切り替えについて #3189
    松原正和
    キーマスター

    ゆさんこんにちは。
     
    申し訳ないのですが、Version 2.13.0には、複数同時にSSH接続を行うと、SSHモジュールでエラーが起こるのを正しく検出できず、1つ目のSSH接続に接続しようとしてしまう不具合があります。
     
    先日Version 2.13.3 をリリースしたのですがこちらではいかがでしょうか?。こちらでもこれにかかわる修正を行っています。こちらでもエラーが起こる場合は、詳細なエラーメッセージをお教えいただけるとありがたいです。
     
    Version 2.13.3でもエラーが起こる場合は、暫定的にPLINK.exe(PuTTY)を使ったSSH接続を試してみるといいかもしれません。オプションダイアログの「SSH接続」タブで「PLINK.exe」の項目を正しく設定してください。その後、鍵ファイルをPuTTY形式に変換するとPLINK.exeを使用してSSH接続するようになります。

    松原正和
    キーマスター

    修一さんこんにちは。

    はい、確かにUSBで運用していて、設定の保存時にエラーが起こるといろいろ不具合が起きそうですね。

    修正しますが、今週は修正版を出せないので少々お待ちください。

    松原正和
    キーマスター

    ぬーぼーさんこんにちは。

    はい、現象を確認しました。どうも、SQLite3自体の内部で発生しているエラーのようでしたが、どのような原因で出ているのか良く分かりませんでした。LiteDACの不具合と同根のようにも思えますが、こちらが2015年に修正されているのに、UniDACは直っていないというのもおかしな話ですね。

    また、UniDACに付属する静的結合用のSQLite3ライブラリ(ソース無し)ではエラーが起こるものの、SQLite3公式のDLLを動的結合させるとエラーが発生しないことを確認しました。

    とりあえず、次の2.14.0のベータ版からはSQLite3のDLLを64bit版に同梱するようにしたいと思います。

    • この返信は6年、 6ヶ月前に松原正和が編集しました。
    返信先: ビューの作成について #3158
    松原正和
    キーマスター

    あべちゃんさんこんにちは。

    ERエディタでのビューの話ですよね。

    以下のようにカラムに「as XXX」のように別名を付けて物理名で区別できるようにするとよいです。

    SELECT
     HOGE as PIYO1, — ふが1
     HOGE as PIYO2 — ふが2
    FROM
     TableA

15件の投稿を表示中 - 1,336 - 1,350件目 (全1,611件中)