正解です。実際に準備されたステートメントはサーバーでサポートされている必要があります。実際に準備されたということは、2つのステップでデータベースにクエリを実行することを意味します。
最初のステップは、サーバーがプリコンパイルできるクエリテンプレートを送信することです。データベースエンジンは、実行プラン(ほとんどの場合、実際のクエリを提供するために使用されるインデックス)も事前に準備します。
2番目のステップは、プレースホルダーに実際の値を指定し、これらのパラメーターを使用して実際のクエリを実行することです。
これにより、通常、いくつかの同様のクエリをより高速に実行できます。これは、1。クエリが既にプリコンパイルされており(実行プランがすでに計算されている)、2。パラメータ値のみが後で送信されるためです。
エミュレートされたクエリは単なる構文糖衣であり、複数の連続した同様のクエリの送信を容易にします(実行を高速化することはできません)。エミュレートされたクエリが実行されるたびに、完全なSQLステートメントがサーバーに送信されます。
サーバーが実際のプリペアドステートメントをサポートしていない場合でも、エミュレートされたプリペアドステートメントを使用することをお勧めします。これは、ドライバーが値のエスケープを処理し、SQLインジェクションの可能性を低くするためです。