【Salesforce 認定Platformデベロッパー】試験対策:第130問

問題

匿名ブロックで実行されるApexコードに関して正しい答えはどれですか。2つ選びなさい。

  • コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
  • コードは、ログインしているユーザーの権限で実行されます
  • コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
  • すべてのDML操作は自動的にロールバックされます
  • 成功したDML操作は自動的にコミットされます

正解

  • コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
  • コードは、ログインしているユーザーの権限で実行されます
  • コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
  • すべてのDML操作は自動的にロールバックされます
  • 成功したDML操作は自動的にコミットされます

解説

それぞれの選択肢の理由について説明します。

□ コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
これは不正解です。runAs()はテストメソッド内でのみ使用され、匿名ブロックでは使用されません。

□ コードは、ログインしているユーザーの権限で実行されます
これは正解です。匿名ブロックは現在ログインしているユーザーの権限で実行されます。

□ コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
これは不正解です。匿名ブロックは現在のユーザーの権限で実行されるため、ユーザーのアクセス権限に違反するコードはコンパイルできない場合があります。

□ すべてのDML操作は自動的にロールバックされます
これは不正解です。DML操作は、匿名ブロックの実行が失敗した場合のみロールバックされます。

□ 成功したDML操作は自動的にコミットされます
これは正解です。匿名ブロック内でのDML操作が成功した場合、その変更は自動的にデータベースにコミットされます。

次の問題へ

前の問題へ

1問目から復習する

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

雇われのシステムエンジニアです。
普段は車載ECUのセキュリティー分野に従事しております。

コメント

コメントする

目次