C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

アンケートのような質問です。

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■97559 / inTopicNo.1)  アンケートのような質問です。
  
□投稿者/ 還暦 (5回)-(2021/06/07(Mon) 10:08:11)

分類:[.NET 全般] 

SQLServerを使用しています。
アンケート的な質問になりますが
Insert Into なのですがテーブル名の後に列名を指定しますが
省略することも可能ですよね。

そこで、質問ですが

1.データベースに列を追加されたときのために
  列名は表示して対応しておくべきでしょうか?
  もちろん追加されてデータはデフォルトで登録されます。

2.データベースの列を増やしたりするのは基本的にやってはいけないことで
  追加した場合は面倒であるがInsert Into を使用している部分は
  再度変更しなければならない

3.追加するのではなく別テーブルを作り結合して使用する
  (結合して使用すると処理時間がかかってしまうのでしょうか?)






引用返信 編集キー/
■97560 / inTopicNo.2)  Re[1]: アンケートのような質問です。
□投稿者/ furu (114回)-(2021/06/07(Mon) 11:05:28)
No97559 (還暦 さん) に返信
質問は1だけですね。

SQL Serverは使用したことがなく
普段はORACLE,PostgreSQLです。

> 1.データベースに列を追加されたときのために
>   列名は表示して対応しておくべきでしょうか?
列名は明記するようにしています。

列追加されたらエラーにしたい場合
列名省略もあるかな。

ただ、列の順序変えられたら、終わる。
PostgreSQLでは列追加されてもエラーにならない。
引用返信 編集キー/
■97561 / inTopicNo.3)  Re[1]: アンケートのような質問です。
□投稿者/ WebSurfer (2252回)-(2021/06/07(Mon) 11:13:24)
No97559 (還暦 さん) に返信

全て質問者さんが属する組織のルール次第(ルールが無ければこの際決める)だと思いますが、
アンケートということなので自分は個人的にどうするかをレスしておきます。

> 1.データベースに列を追加されたときのために
>   列名は表示して対応しておくべきでしょうか?
>   もちろん追加されてデータはデフォルトで登録されます。

一切省略せず対象の列全て明記します。書けばデバッグや保守がより容易になると思いますけど。そ
れと天秤にかければ、そういうところで手を抜く価値はなくて、逆にマイナスではないですか?

あと、VALUES の方は必ずパラメータ化します。(こちらはアンケート対象でないかもしれませんが、
重要だと思ってます)

> 2.データベースの列を増やしたりするのは基本的にやってはいけないことで

開発時の話なら、開発状況に応じて DB の構造を変更することはよくある話で、「基本的にやっては
いけないこと」ではないと思います。

Entity Framework Code First という機能があって、開発状況に応じて容易に変更できる機能もあり
ますし。

運用中の SQL Server は話は別で、その時々に事情によるのではないでしょうか。

>   追加した場合は面倒であるがInsert Into を使用している部分は
>   再度変更しなければならない

それはもう当たり前の話で、面倒だから手を抜けるようにしたいなどとは自分は 1 ミリも思わない
です。

> 3.追加するのではなく別テーブルを作り結合して使用する
>   (結合して使用すると処理時間がかかってしまうのでしょうか?)

上記2のレスと同じです。
引用返信 編集キー/
■97564 / inTopicNo.4)  Re[2]: アンケートのような質問です。
□投稿者/ でし (2回)-(2021/06/07(Mon) 14:29:11)
どうもありがとうございました。

列は後々のことを考えるとやはり入れておいたほうが良いと思います。
VALUES は私もパラメータ化しています。

皆さんの意見が聞けて良かったです。
引用返信 編集キー/
■97566 / inTopicNo.5)  Re[3]: アンケートのような質問です。
□投稿者/ でし (3回)-(2021/06/07(Mon) 14:29:41)
ありがとうございました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ