アプリ版:「スタンプのみでお礼する」機能のリリースについて

よろしくお願いします。

仕様環境(access2003,access2007)

access データベースを作っています。

データベース内にテーブルがいくつかあるのですが、
他人に勝手に変更(レコードの追加や削除)してもらいたくない
テーブルがあります。
(どんどん件数が足される仕様のものではないので)

何かいい方法はありますでしょうか?

データベースウィンドウ全体(2007だとナビゲーションウィンドウ)を
隠す方法は知ってますが、違う方法を考えています。

ちなみにリンクテーブルは使っていません。

教えてください、よろしくお願いします。

「access テーブル内のレコードの編集」の質問画像

A 回答 (3件)

2003の場合


1.ツール-オプション-表示タブの隠しオブジェクトのチェックを外す。
2.テーブル名を右クリック-プロパティで隠しオブジェクトをチェックする。
2007の場合
1.ナビゲーションウィンドウ右クリック-ナビゲーションオプション-隠しオブジェクトの表示のチェックを外す
2.2003と同様
これで追加どころかそもそも見えなくなりますのでオブジェクトウィンドウから直接操作することは出来ません。
参照の必要があれば参照用のクエリを作ってください。
(クエリのプロパティのレコードセットでスナップショットを選択する)
これでどうでしょうか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

やってみました
こんな簡単な方法があったんですね、
これなら「レポートやフォームのフィールドサイズ(長さ)位はいじれるよ」
位の人は、ちょっと実践してみないとわからないですね。
また、わざわざ謎解きをしてまで編集するという手間をかけたり、
データベースという個人情報の箱のようなものに
危険を伴いそうなことはしないと思います、
そもそもそういう人はDB専門ではないですし・・。
(とりあえず僕の周りでは・笑)

ありがとうございました!

お礼日時:2010/03/05 21:37

> データベースウィンドウ全体(2007だとナビゲーションウィンドウ)を


> 隠す方法は知ってますが、違う方法を考えています。

ワークグループ情報ファイル(拡張子「.mdw」)を使用したユーザーレベル
セキュリティを使用する、という方法があります。
これを使用すれば、制限が必要なテーブルに限定して、追加・削除・
更新の可否を、それぞれ個別に指定することもできます。

但し、Access2007ではこれを新規に適用する手段は用意されていない
ので、この機能を使用する場合は、Access2003で設定することに
なります。
(Access2007では、新規適用はできませんが、旧バージョンで適用した
 ものを使用することはできます)
http://office.microsoft.com/ja-jp/access/HA10198 …
(「Office Access 2007 とユーザーレベル セキュリティ」で検索して下さい:
 ページ最下方になります)

こちらも参考に:
http://office.microsoft.com/ja-jp/access/HA10234 …
http://office.microsoft.com/ja-jp/access/HA10166 …


・・・ただ、これを実際に使おうとすると、かなり深みにはまる場合が
ありますので、ご注意下さい(汗)
http://oshiete1.goo.ne.jp/qa5702534.html
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

セキュリティ重要ですね、
オブジェクト単位で個別に制限が出来るのは魅力ですね。

ただ下の記事を読んで、
http://oshiete1.goo.ne.jp/qa5702534.html
気の毒な人もいるんだなー、と思いました(苦笑)

ちょっと今、他のことで手が離せないので、
今度試してみようと思います。

しかし、なぜ2007から無くなったのだろう・・。

ありがとうございました!

お礼日時:2010/03/05 21:31

目的のテーブルに対し、親テーブルと子テーブルを


作ります。親、子ともステータスIDを持たせ、
親←目的のテーブル←子 のようにリレーションを
設定します。(参照整合をチェック)

親のレコードのステータスIDが1~6だと、子にあたる
目的テーブルは同じステータスIDを持つレコードしか
作れません。即ち、それ以外の値を持つレコードを
挿入できません。
また、子テーブルにステータスIDが1~6のレコードが
存在すると、参照されている方、即ち目的のレコードは
削除ができなくなります。

リレーションの関係は他のDBシステムでも同じです。
子(自分を参照している)が存在する場合は削除不可
親が存在する場合は親と同じ値のデータのみ作成可能
つまり、作る時は親から、削除する時は子から実行
する必要があります。但し、参照整合を緩めると効果が
なくなります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

回答者様の答えを見て、以前、偶然こういうことが
出来たことを思い出しました。
(どうやって出来たかは覚えてないですが・・)

参照整合はばっちりです(?)、重要ですね。

今回は他者様の方法を取り入れましたが、
この方法は応用がいろいろ利きそうな気がします。
今度、試してみたいと思います。

ありがとうございました!

お礼日時:2010/03/05 21:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A