Dapatkan pernyataan SQL yang dibina daripada objek SqlCommand
Dalam pengaturcaraan pangkalan data, ia boleh menjadi sangat berguna untuk mendapatkan pernyataan SQL lengkap yang objek SqlCommand akan dilaksanakan. Ini mungkin diperlukan untuk tujuan pengelogan, seperti mendiagnosis permintaan yang gagal, atau menyemak pertanyaan terbina sebelum pelaksanaan.
Salah satu cara untuk mencapai ini ialah membina pernyataan secara manual menggunakan sifat CommandText dan Parameter objek SqlCommand. Ini melibatkan lelaran ke atas parameter dan menggantikan nama parameter dalam CommandText dengan nilai yang sepadan. Coretan kod berikut menunjukkan pendekatan ini:
<code class="language-c#">string query = cmd.CommandText; foreach (SqlParameter p in cmd.Parameters) { query = query.Replace(p.ParameterName, p.Value.ToString()); }</code>
Pertanyaan yang dijana kini boleh digunakan untuk pengelogan atau situasi lain yang memerlukan akses kepada pernyataan SQL penuh. Sebagai contoh, anda boleh menulis pertanyaan pada fail log atau memaparkannya untuk analisis dan penyahpepijatan.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan semula String SQL yang dibina sepenuhnya daripada objek SqlCommand?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!