DB項目めい
あるシステムの得意先マスタの得意先コードが
tms_tcd のようにテーブル名と項目名を合体させている物も見ますが
Magicのモデルリポジトリで楽をしようとすると、どのテーブルでも
tcd としてしまいます。SQL文でJOINする際は、エイリアスを指定します。
私と同様の方もおられますか?
-
イシジマさんありがとうございます。テーブル名も添えた項目名にするのは少々手間でしょうがそれもありですよね。そのテーブル内でDBカラム名の頭にテーブル名を一括配置など出来るといいのでしょうね。
-
私は項目名にテーブル名を添えていないので項目名が被った時だけ
select mei.tcd from urmei as mei
join uriden as den on den.dno = mei.dno
のように修飾してます。
最近はasも書いてません。
完全な正規化はしておりません。 -
実際には項目名もテーブル名も漢字カナを使ってきました。
-
Magic SQLを使用すれば各構文を意識する必要がなくなりますし、SQLごとに文法をチェックする必要もなくなると思いますよ。
-
tandaさん
範囲絞りについては、Ctrl+R 範囲/位置付け → SQL Where句の
Magic SQLや
DB SQL ももっと活用しても良さそうですね。
私の場合、DB SQLの部分は、大文字小文字半角全角無視した(JAPANESE CI_AS)
あいまい検索でしか使っていないので。
ありがとうございました。 -
Magic SQLは、SQL製品ごとに最適なSQL文をMagicが自動生成してくれますので、早くて楽ですね。
-
こんにちはPuです。
私は項目名はtms_tcd のようにテーブル名と項目名がわかる名前にしてますが
DBカラム名はtcdのように他のテーブルで使用する名前と同じにしてます
でわ~でわ~ -
タンダさん、Puさん、ありがとうございます。
DBカラム名にテーブル名を修飾するか否か人によって違うということがわかりました。どうもありがとうございました。DBカラム名にテーブル名も添えるとSQL文でジョインする時は便利だというメリットがあるけど、テーブル定義する時に手間はかかりますね。どちらを取るかですね。
私は最近は集計物にSQLコマンドを多用しており大いに役立っております。
-
集計物はSQLコマンドを多用して役立っているとは書いておりますが、SQL Server Management Studioで書いたクエリーをMagicのオンラインタスクやバッチタスクへ移植し、値を受け取る変数を用意し、画面で指定した条件指定をSQL文のパラメータにするなど、実装は手間がかかりますね。もっと手間を省けたらいいのですが。
SQLコマンドだけ定義して、APGで受取変数を作る事が出来たような気もします。
少し楽ができますね。作成された変数にまたモデルを定義する方が気持ち悪くないですね。
サインインしてコメントを残してください。
コメント
9件のコメント