フォーラムへの返信
-
投稿者投稿
-
松原正和
キーマスター山田さんこんにちは。
実行計画についてですが、基本的にキャレットの下にあるSQLが対象となります。MySQL以外でも他のデータベースでもそのような動作をするはずです。
以上よろしくお願いいたします。
松原正和
キーマスターあり。さんこんにちは。
はい、現象を確認しました。今週末にでも修正版(rc版)を出したいと思いますので少々お待ちください。
ちなみに正式版のリリースについて、CUI版はGUI版よりやや遅れてのリリースとなると思います。松原正和
キーマスターbug-reportさんこんにちは。
もしかすると、SQLエディタのデータベース選択のプルダウンで描画イベントで発生しているのでは?と思えます。
ただ、本来そこでは発生し得ない問題な気もしていて原因をつかみ切れていないのが現状です。
とりあえず、12/16あたりの次のrc版を出したいと思うので、それまでに修正したいと考えています。
松原正和
キーマスターしろうとXさんこんにちは。
「キャラクタセット」の項目は「show variables like ‘character_set_client’」したときの、値を設定する項目です。
多くの場合は何も入力しなくて問題ありませんが、データベースの文字コードがutf8mb4の場合、接続設定の「キャラクタセット」でutf8mb4を指定しないと、サロゲートペア文字が正しく扱えません。
以上よろしくお願いいたします。
松原正和
キーマスターbug-reportさんこんにちは。
使用しているA5:SQL Mk-2のバージョンはいくつでしょうか?。
SQLエディタのデータベースのプルダウンについてですが、一度接続した後に切断しているとか、接続後に他の(接続していない)データベースに切り替えたなどありますでしょうか?。
以上よろしくお願いいたします。松原正和
キーマスターフルーツポンチさんこんにちは。
現状ではExcelのコピー&ペーストでデータ部の背景色を設定していない(デフォルト色)ですが、こちらを指定できるようにということでしょうか?。
現在、version 2.14.0の準備中で仕様変更を伴うような修正ができないのですが、気長にお待ちいただければと思います。松原正和
キーマスターmitsuさんこんにちは。
いまのところ、A5:SQL Mk-2のERエディタでは対象データベースの文字コードまでは管理しません。なので、128バイトとは言っても、JA16SJIS_TILDEの128バイトなのか、AL32UTF8なのか判断がつかないため、ちょっと今のままではチェックは難しいような気がします。
また、年明けくらいにはversion 2.14.0をリリースする予定で、大きな修正が入れられない状況です。(長期的にはバリデーションの仕組みを作りこむなどできるかもしれません)
ご期待に沿えず申し訳ありません。松原正和
キーマスターsin5さん、こんにちは。
調査したところ、SQLite3は日付時刻型データに対して数値表現で値を挿入した場合、ユリウス通日と呼ばれる形式で表現された日時であると解釈します。ユリウス通日はグレゴリオ暦でいうところの、西暦 -4712年1月1日の正午からの経過日数を表します。時刻は少数を使って表現します。(1.0を1日とした少数表現で、当然正午からの経過時間です。)
一方A5:SQL Mk-2で使っているUniDACでは、SQLite3の日付で数値表現を扱う場合、なぜか小数点が付かない場合(つまり正午)にかぎり、ユリウス通日ではなく、Unixtimeであると誤って解釈して出力しているようでした。
つぎのリリース候補版(version 2.14.0 rc4)で修正しますのでお試しいただければと思います。(本日 12/2 中にリリース予定です。)松原正和
キーマスターTOMOさんこんにちは。
A5:SQL Mk-2はデータベースの種類にもよりますが、「専用接続」と「ODBC」あるいは「OLE DB」により接続できます。PostgreSQLでしたら、「専用接続」が使えます。これは、「データベースの追加と削除」より選ぶことができます。
ODBCデータソースにデータが登録してある場合、A5:SQL Mk-2から登録する必要がない分、手軽に接続できますが、「専用接続」の方が概ね高速です。ODBCドライバのバージョンによってはA5:SQL Mk-2との相性があるケースもあるかもしれません。
(ただし、PostgreSQLのバージョンによってはODBCドライバの方が問題が少ないケースもあるかもしれません。)松原正和
キーマスターしろうとXさんこんにちは。
現象を再現できました。version 2.13.3で古い暗号化ロジックに対する互換性の問題を解決したコードが誤動作していたようでした。
version 2.14.0 rc4で修正しますのでお試しいただければと思います。松原正和
キーマスターTKさんこんにちは。
どうも、コマンドライン版のA5:SQL Mk-2とSQL構文の解析ロジックを共通化したことによる動作の違いな気がするのですが、ソースを見ても version 2.14.0 beta 6以前でなぜ結果セットを表示できていたのか良く分かりませんでした。
とりあえず、Shift+Ctrl+Enterで実行すると、結果セットを返すSQLだとみなして実行するので、さしあたりは回避できそうな気もします。(すみません、マニュアル等に書いてない機能です)
あと、Explain文を実行しなくとも、該当SQLで、Ctrl+Eを押下すると実行計画が表示されるのですが、これではだめでしょうか?。
(現状は analyze オプション無しですが、正式版リリースまでに analyze オプションの負荷を検討したいと思います。)松原正和
キーマスターぬーぼーさんこんにちは。
疑似トリガー…確かに、あると便利といえば便利な気もしますが、作るのは大変そうですね。内蔵しているDMonkeyスクリプトでいろいろできると便利かもしれません。(夢?が広がりますね)
ただ、うまくUIを作りこまないと、作るのが大変な割に「誰も知らない・使いこなせない機能」になりそうな気もしますし、疑似でない本物のトリガーで処理するのが真っ当なな気もします。松原正和
キーマスターしろうとXさんこんにちは。
情報ありがとうございます。ただ、キャラクタセットの指定はあまり関係ないような気もするのですが…。エラーはDB接続時だと思ってよいでしょうか?。松原正和
キーマスターTOMOさんこんにちは。
手元の環境では再現できませんでした。もしかしたら接続方法やRDBMSの種類によって変わる可能性があるのですが、何をお使いでしょうか?。
松原正和
キーマスターKageさんこんにちは。
はい、実は最近のバージョンではUnicodeのコード順で並び替えるようにしていたのですが、これだと、漢字などがあまりうまく並ばないのですね。
これを解決するには「ロケールを考慮してソート」する必要があるのですが、これは単にShift_JISに変換してソートすることになります(これは従来のバージョンの動作です)。日本語以外の外国語などが入ってくるとちょっとこれでは問題が起こりそうな気がするので、悩ましいですね。
オプションなどで動作を変更できればよいのかもしれないですが、リリース候補版でそこまで変更したくもないのでちょっと次のバージョンの対応になるかもしれません。 -
投稿者投稿