最近、他の人のデータ処理を手伝っていたところ、データを追加するときに「ASP を更新できません。データベースまたはオブジェクトは読み取り専用です。」というメッセージが表示されることがわかりました。オンラインで検索しましたが、問題は解決されませんでした。
1. サーバーのデータ ディレクトリ mdb ファイルが配置されているディレクトリは読み取り専用です。
2. データベースのローカル権限を読み取り専用権限に変更し、アップロードします。
3. 読み取り専用ディレクトリから読み取り可能なディレクトリに移動した可能性があるため、この種の問題を解決するには、まずローカルにダウンロードしてからアップロードする必要があります。
「更新できません。データベースまたはオブジェクトは読み取り専用です」の解決策
Dreamweaver に初めて触れたとき、Access データベースにデータを書き込むための単純なページを作成するときに、常に次のエラーが発生しました。
Microsoft OLE DB Provider for ODBC Drivers エラー '80004005'、[Microsoft][ODBC Microsoft Access Driver] を更新できません。
データベースまたはオブジェクトは読み取り専用です。何度もデバッグを試みましたが、うまくいきません。
百度で検索するしかないですね(笑)。多くの人が私の状況に遭遇しているようです。検索すると、リソース共有の利点がたくさん見つかります。
解決:
この問題の原因は、サイト ディレクトリのアクセス権限です。これは、Access データベースを使用する場合、このディレクトリに .ldb ファイルを生成する必要があるためです。
書き込み権限がない場合、または Access データベース自体に書き込み権限がない場合、このエラーが発生します。ブラウザでアクセスするほとんどのWebサイトはインターネットを利用して匿名でアクセスするため、
「IUSR_コンピューター名」ユーザーをデータベースのディレクトリ権限に追加し、「書き込み」権限を付与するだけです。という記事をいくつか見つけました
EveryOne ユーザーに参加して「書き込み」権限を与えましょう。これは危険すぎます。原則として、このディレクトリは、ユーザーが IIS を構成するときに書き込めるように追加されます。
インターネット匿名アクセス ユーザーは通常、「IUSR_コンピューター名」がデフォルトですが、仮想ホストの場合は自分で確認する必要があります。
具体的な操作方法は以下の通りです。
データベースが存在するディレクトリ (またはその上位ディレクトリ、ただしアクセス許可を必ず継承してください) を右クリック -> 「共有とセキュリティ」を選択 -> 「セキュリティ」タブを選択 ->
「追加」ボタンをクリック -> 「詳細...」ボタンをクリック -> 「今すぐ検索(N)」ボタンをクリック -> 接頭辞「IUSR_」が付いたユーザー名を検索します。
(形式はIUSR_コンピュータ名です) -> このユーザーを選択して「OK」をクリックします -> このユーザーが追加されます -> 「インターネット ゲスト アカウント」の許可ボックスで、
デフォルトに加えて、「書き込み許可」→「適用」または「OK」を選択します。