スキップしてメイン コンテンツに移動

テーブルの列名の一覧を得るのに時間がかかるときは

テーブルに900列もあると、テーブルの列名の一覧を得るのにえらく時間がかかってしまう。数秒から10秒くらい待たされる(体感)。


仕方が無いのでSQLを工夫する。このとき、テーブルの列名の一覧を得るのに使っていたのは、次のようなSQLだった。

select name from sys.columns where OBJECT_NAME(object_id) = 'aテスト成績'

これを関数呼び出しが1回で済むように書き換える。

select name from sys.columns where [object_id] = OBJECT_id('aテスト成績')

これで一瞬で結果が返ってくるようになった。素晴らしい。

教訓

900列もあるテーブルを作ってはいけない。

コメント

このブログの人気の投稿

SQLでは文字列の前に「N」が必要だ

SQLServerのテーブルにテキストを登録したら一部の文字が文字化けした。環境依存文字だと化けるみたい。

コンボボックスのDataSourceプロパティの使い方

コンボボックスに表示するデータを設定するのを簡単にする工夫をまとめます。コンボボックスのDataSourceプロパティを上手に使いましょう。(2017/8/30追記)