ホーム › フォーラム › A5:SQL Mk-2掲示板 › (提案)疑似命令captionsの拡張
- このトピックには3件の返信、2人の参加者があり、最後に
により7年、 8ヶ月前に更新されました。
-
投稿者投稿
-
ぱんかれ
ゲストこんにちは、いつもおせわになっております
今日はER図ではなく、SQLウインドウについてなのです:疑似命令Captionsの拡張、として、たとえば、
Columns を追加できないでしょうか。というのは、Captionsが存在している時、カラムを入れ替えて
INSERT文やSELECT文をつくったとき、結果セットのカラム表示が強制的に
上書きされてしまうため、カラムを誤って読み取って事故が起きる、
ということが起きてしまったことに起因します(投入ミス)。(* にたいして、VALUES(…) でupdateしたとき、
Captionsに誤りがあったとき、そのまま出てしまうためです。)この時、Columnsで同じように物理名を定義しておいて、順番がひっくり返っても、
Columnsの数とCaptionsの数が同じである前提で(過不足ある状態で結果セットの
カラム数が異なる場合は現行維持)、結果セットの物理名を読み取って論理名に
当ててもらえると、とてもありがたいのです。どうかご検討いただければ幸いです。
当該機能のヘルプのページ:
https://a5m2.mmatsubara.com/help/SQLEditor/giji.htmlぱんかれ
ゲストこれが実現できると、DROP 後にCREATEして、SELECTするSQLを投じても、
あれA5M2の画面上のカラムが変わってない!みたいなパニックを副次的に避けられます
(2018/01/14のブログで追加された分ですね)
–* BackupToTempTable
–* RestoreFromTempTable松原正和
キーマスターぱんかれさんこんにちは。
たしかに、これまでもSQLを修正しても列の表示が変わらないとの質問を受けたことがあります。
なので、CaptionList及び、CaptionFromComment疑似命令を作ってみました。
CaptionList疑似命令は「–* CaptionList ‘Key1=Value1, Key2=Value2, Key3=Value3’」のようにして使用します。
CaptionFromCommentはSELECT文の中で列定義の行の後ろに記述したコメントを論理名として使用します。
例)
–* CaptionList ‘ORDER_NO=オーダー№’
–* CaptionList ‘CUST_NO=顧客№, POSTAL_CD=郵便番号, ORDER_DT=受注日’
select
ORDER_NO
, CUST_NO
, POSTAL_CD
, ORDER_DT
from TB_ORDER
;–* CaptionFromComment
select
ORDER_NO /* オーダー№ */
, CUST_NO — 顧客№
, POSTAL_CD, — 郵便番号
ORDER_DT — 受注日
from TB_ORDER
;ぱんかれ
ゲストおおおお ありがとうございます、これは予想以上にパワフルです!助かります!
-
投稿者投稿