/ 産業システム部
Tweet
シェア
システム開発ブログ
最近の記事
- Chrome for Androidの新機能、Chrome to Mobileを試す
- ファイルサーバのBCP対策(アイロベックスの場合)
- Illustratorの矢印機能でラクラク矢印作成!
- システム会社選びのポイント
- システム保守の移管費用を抑えます
- アイロベックス通信発行してます
- ボタンのデザインをxmlで定義する
- Excel2010で行コピーをした場合に、画像ファイルのサイズが変わらないようにする
- Power Point2010 でスライド番号をつける方法
- Photoshop の秘宝
カテゴリー
- HTML全般 (2)
- Access (15)
- Android (5)
- .NET (14)
- Excel (9)
- Google Apps (5)
- HTML5 (3)
- iPhone (8)
- JAVA (14)
- Linux (7)
- Movable Type (15)
- MySQL (7)
- OpenOffice (10)
- Oracle (6)
- PHP (20)
- SQLServer (4)
- twitter (6)
- VBA (11)
- Webサイト構築・Web戦略 (32)
- Webサイト構築事例 (4)
- Windows (10)
- その他 (29)
- アクセス解析 (2)
- ウィジェット (1)
- システム設計 (5)
- システム開発事例 (3)
- システム開発体制 (1)
- セキュリティ (5)
- データベース (20)
- プロジェクト管理 (8)
- 品質管理・テスト (6)
- 帳票 (3)
- 技術活用 (6)
- 運用・保守 (8)
部署
- システム開発事業部 (33)
- ビジネスソリューション課 (17)
- システムソリューション事業部 (32)
- 流通システム部 (76)
- 産業システム部 (93)
- ソフトウエア開発部 (56)
- Webコンサルティング部 (97)
- 企画開発部 (37)
- 部長インタビュー (3)
月別アーカイブ
- 2012年2月 (6)
- 2012年1月 (18)
- 2011年12月 (19)
- 2011年11月 (22)
- 2011年10月 (29)
- 2011年9月 (28)
- 2011年8月 (5)
- 2011年7月 (18)
- 2011年6月 (15)
- 2011年5月 (21)
- 2011年4月 (8)
- 2011年3月 (12)
- 2011年2月 (12)
- 2011年1月 (13)
- 2010年12月 (18)
- 2010年11月 (19)
- 2010年10月 (19)
- 2010年9月 (21)
- 2010年8月 (17)
- 2010年7月 (21)
- 2010年6月 (22)
- 2010年5月 (14)
- 2010年4月 (12)
- 2010年3月 (13)
- 2010年2月 (9)
- 2010年1月 (12)
- 2009年12月 (7)
- 2009年11月 (6)
- 2009年10月 (8)
- 2009年9月 (7)
- 2009年8月 (3)
- 2009年7月 (1)
- 2009年6月 (3)
- 2009年5月 (1)
- 2009年4月 (1)
- 2009年3月 (8)
- 2009年2月 (10)
- 2009年1月 (1)
- 2008年12月 (1)






産業システム部 / データベース
シノニムとは、オブジェクト(テーブル・ビュー・プロシージャ・ファンクション・パッケージなど)に対する別名のことです。
シノニムを作成
>CREATE SYNONYM TEST_USER.TEST FOR MASTER.EMP;
そうすると、TEST_USERは下記のようにMASTERのEMP表にアクセスすることが出来ます。
>SELECT * FROM TEST;
シノニムを使用する一番のメリットはセキュリティ面ではないでしょうか。
TEST_USERに対して、SELECT権限のみ付与しておけば、
TEST_USERが勝手にEMP表を変更できなくなります。
次に、別名なのでわかりやすい名称を付けることが出来ます。
>CREATE SYNONYM TEST_USER.社員 FOR MASTER.EMP;
>SELECT * FROM 社員;
上記のようにすることも出来ますが、個人的にはそこまでメリットは感じません・・・。
おそらく、小規模のプロジェクトでシノニムを使用する必要はあまりないと思います。
大規模なプロジェクトで、いろいろな会社、チームに跨って開発する場合は、
誰もが勝手にマスタ表などを使用できる状態というのは問題だと思います。
そういう時にシノニムを使用すれば、セキュリティ上は問題ないです。
さらに、シノニムを実テーブルに対して作成するのではなく、
ビューを作成しておき、ビューに対してシノニムを作成しておけば、
セキュリティ面はさらに向上します。
また、ビューにしておくメリットもあります。
複数のチームに跨る場合、各チームによって、必要な情報が異なってくると思いますので、
必要な情報を全て保持したビューにしておけばいいのです。
例えば、
・Aチームは社員の情報が参照したい。
・Bチームは社員、部門の情報が参照したい。
となっていた場合、
実テーブルに対してシノニムを作成すると、
Bチームには2つのテーブルに対してシノニムを作成する必要が出てきます。
もともと社員、部門の両方の情報を保持したビューにしておけば、
両チームとも同じビューに対してシノニムを作成するだけでよくなります。
開発チームが4つ、5つある場合、要望があるたびに、シノニムを作成していると面倒なので、
「社員情報」というビューを作成しておけば、いくら要望があってもビューを変更するだけで対応できます。
ちなみに、シノニムはオブジェクトが存在する前に作成することも出来ますが、
その後にオブジェクトを作成したとしても、参照は出来ません。
オブジェクトがある状態でシノニムを作成した後に、オブジェクトを削除すると、当たり前ですが、参照は出来ません。
ただ、その後再度同じ名前のオブジェクトを作成すれば、再び使えるようになります。
※この場合、オブジェクトの名前さえ同じであれば、中身がまったく異なっていても問題ないです。
「システム開発ブログ」へのコメントやご意見等ありましたら、ファンページまでお願いします。 Facebook のファンページ
他社のシステムも直します。資産を活かしてシステムリフォーム