- - PR -
viewの乱用についての質問
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2008-08-18 21:22
自分の使いたいケースは、
・DBをユーザが使うACCESS向けに公開したいけど更新はさせたくない ・日本語のカラムでユーザに公開したい というケースで便利かなと思っています。 ODBC接続用のユーザを作って、 VIEWにだけSELECT権限を与えるという感じでしょうか。 とはいえ、急な仕様変更を間に合わせるために、 テーブル名の後ろに_Vを付けたビューを作って、 プログラムのSQLのテーブル名だけ修正して対応するという、 一時的な逃げもたまにやります・・・。 | ||||
|
投稿日時: 2008-08-19 09:26
これは同じ理由で私もやったことがあります。小さいプロジェクトだったので有効でした。 | ||||
|
投稿日時: 2008-08-20 13:51
難しくなるSQLをviewにしておくというのは、仕様変更や保守やカスタマイズをするうえで問題はないのでしょうか?
| ||||
|
投稿日時: 2008-08-20 14:27
私は、エンドユーザー向けに提供するか、列レベルで参照を制限する理由以外ではViewは使用しないです。
[データベース編]ビュー,トリガーを多用してはいけない:ITpro http://itpro.nikkeibp.co.jp/article/COLUMN/20071126/287920/ | ||||
|
投稿日時: 2008-08-20 15:33
私も View はデバッグや運用管理用途でしか使わないですね。
そういうアプローチでやるならばストアドなりパッケージなり作りますね。 引数をもらえますから、Where 文の組み立てまで含めてストアド内で確実に処理します。 基本的にデータベースエンジンのオプティマイザは信用していないので(依存しないと書くべきか) → 触った初データベースが DOS の時代の Btreave だったせいもありますが 経験上(私のような末端開発会社では)、データベースエンジンに優しい SQL 文を指示なく書けるプログラマは10人に1人くらいだと思っているので(笑)、徹底されるか分からない(検証しないといけない)ような羽目に陥るくらいなら、最初からその「10人に1人」に全てのSQL文の面倒を見てもらうようにします。 いい加減な知識のプログラマは SQL文 に関わるな! って風です。 |