dポイントプレゼントキャンペーン実施中!

Access2000を使っています。
既存のテーブルに、以下のような設定をしたいのですが、どうすればいいでしょうか。

・レコードの削除を禁止する。(1件丸ごとの削除を禁止、ということです)
・特定のフィールドのみ上書きを禁止する。

初心者なので、わかりやすく教えていただけると助かります。よろしくお願いします。

A 回答 (3件)

考え方だけ説明しますと、次のようになります。



まず、フォームを作って、上書きを禁止したいフィールドにリンクしたコントロールの編集許可を禁止します。

つぎに、起動時の設定をいじって、DBの起動と同時に、テーブルを隠し、フォームだけが表示されるように設定します。

ユーザーにはこのフォームからしかDBを参照・編集できないような仕様にします。
    • good
    • 0
この回答へのお礼

ありがとうございます。
上書きを禁止したいフィールドにリンクしたコントロール、というのは、フォームのデザインで開くんですよね。
そのフィールドのコントロールのプロパティを開いて、「編集ロック」を「はい」にしてフォームのデザインを閉じましたが、その後も相変わらずテーブル上でもフォーム上でも編集はできる状態です。なぜ…?

また、テーブル上で、その特定のフィールド以外のフィールドでは編集ができるようにしたいので、テーブルを隠すことはできないんです。

お礼日時:2003/06/04 11:00

>・レコードの削除を禁止する。

(1件丸ごとの削除を禁止、ということです)
フォームのプロパティで削除の許可をいいえにする。

>・特定のフィールドのみ上書きを禁止する。
 そのフィールドのプロパティで編集ロック=はい にする。
 または、更新前イベントでSendKeys "{ESC}"する。

この回答への補足

↑すいません!この「お礼」はNo.1の方へのものです。

回答ありがとうございます。
「フォームのプロパティ」の「削除の許可」はどこにあるのでしょうか…。
テーブルとフォームのデザインをそれぞれ開いてみましたが、わかりませんでした。
「フィールドのプロパティで編集ロック」も、どこなのかわかりません。
よければ教えていただけると嬉しいです。

補足日時:2003/06/03 16:39
    • good
    • 0
この回答へのお礼

ありがとうございます。
[ツール] - [セキュリティ] をひらいてみましたが、[ユーザー/グループの権限]が非表示状態でした。。。

お礼日時:2003/06/03 16:39

 


> レコードの削除を禁止する。(1件丸ごとの削除を禁止、ということです)

Accessのメニューバーより[ツール] - [セキュリティ] - [ユーザー/グループの権限]画面にて設定可能。

> 特定のフィールドのみ上書きを禁止する。

不可能。
テーブルを直接触らせないインターフェイスにするしかありませんが、データベースにパスワードプロテクトを掛けないと意味がありません。
 
    • good
    • 0
この回答へのお礼

ありがとうございます。
[ツール] - [セキュリティ] をひらいてみましたが、[ユーザー/グループの権限]が非表示状態でした。。。

お礼日時:2003/06/03 16:41

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