【Apexエラー】List has no rows for assignment to SObjectについて

スポンサーリンク
【Apexエラー】 List has no rows for assignment to SObjectについて Apex

こんにちは。にいるです。

今回は開発関連です。
エラー「List has no rows for assignment to SObject」について、見ていきたいと思います。

1.エラー発生原因

「List has no rows for assignment to SObject」」の発生原因は、SOQLやSOSLでSELECTした結果が、0件の場合に発生します。
結果のListをVisualforceページにバインドできていても、結果が0の場合の処理方法をApex側で記載しておかないといけません。

2.エラー解決策

「List has no rows for assignment to SObject」のエラー解決策は、結果が0の場合の処理を記載しておけば発生を防ぐ事ができます。
例えば、リストの中身を調べるために「List.size() == 0」や「List.isEmpty()」を使用する事ができます。
これをif文などの分岐で処理を分けておけば大丈夫です。

3.まとめ

いかがでしたでしょうか。

このエラーはよくぶち当たるので、SELECT文を作成する際は、考慮しておかないといけないですね。
他にも回避方法がないか調べてみます。

他にも色々と標準機能やSalesforce機能について紹介しています。
そのまとめ一覧ページはこちらになりますので、よければ見てみてください。

ではでは!

Salesforce 機能別 まとめページ

コメント

タイトルとURLをコピーしました