問題
匿名ブロックで実行されるApexコードに関して正しい答えはどれですか。2つ選びなさい。
- コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
- コードは、ログインしているユーザーの権限で実行されます
- コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
- すべてのDML操作は自動的にロールバックされます
- 成功したDML操作は自動的にコミットされます
正解
- コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
- コードは、ログインしているユーザーの権限で実行されます
- コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
- すべてのDML操作は自動的にロールバックされます
- 成功したDML操作は自動的にコミットされます
解説
それぞれの選択肢の理由について説明します。
□ コードは、runAs()ステートメントで指定されたユーザーの権限で実行されます
これは不正解です。runAs()はテストメソッド内でのみ使用され、匿名ブロックでは使用されません。
□ コードは、ログインしているユーザーの権限で実行されます
これは正解です。匿名ブロックは現在ログインしているユーザーの権限で実行されます。
□ コードは、すべてのオブジェクトとフィールドにアクセスできるシステムモードで実行されます
これは不正解です。匿名ブロックは現在のユーザーの権限で実行されるため、ユーザーのアクセス権限に違反するコードはコンパイルできない場合があります。
□ すべてのDML操作は自動的にロールバックされます
これは不正解です。DML操作は、匿名ブロックの実行が失敗した場合のみロールバックされます。
□ 成功したDML操作は自動的にコミットされます
これは正解です。匿名ブロック内でのDML操作が成功した場合、その変更は自動的にデータベースにコミットされます。
次の問題へ
【Salesforce 認定Platformデベロッパー】試験対策:第131問
問題 開発者は、maxAttempts と呼ばれる整数変数を持っています。開発者は、一度maxAttemptsが初期化されると、トリガー実行の間で変数の状態を共有しながら、Apex処理…
前の問題へ
【Salesforce 認定Platformデベロッパー】試験対策:第129問
問題 開発者は、Lightningコンポーネントが取引先責任者のレコードを検索するために使用できるApexクラス「ContactController」を作成する必要があります。Lightningコ…
1問目から復習する
【Salesforce 認定Platformデベロッパー】試験対策:第1問
問題 デバッグログに書き込まれるときのxの値は何ですか。 Integer x = 0; do { x = 1; x++; } while (x < 1); System.debug(x); 0 1 2 3 正解 0 1 2 3 解説 デバッ…
コメント