Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

C# Pernyataan yang Disiapkan - tanda @ (at / tanda strudel) query

Memang, ODBC memiliki masalah dengan mendukung parameter bernama. Namun, penggunaan tertentu dari parameter bernama dimungkinkan.

Misalnya, dalam kasus Anda, sintaks berikut berfungsi:

OdbcCommand cmd = sql.CreateCommand();
cmd.CommandText = "SELECT UNIQUE_ID FROM userdetails WHERE USER_ID = ?";
cmd.Parameters.Add("USER_ID", OdbcType.VarChar, 250).Value = email;

Situasi yang lebih rumit adalah ketika Anda tidak memiliki kecocokan unik untuk parameter seperti USER_ID =?; misalnya, ketika Anda ingin menggunakan IN operator di WHERE klausa.

Kemudian sintaks berikut akan melakukan pekerjaan:

OdbcCommand cmd = sql.CreateCommand();
cmd.CommandText = "SELECT UNIQUE_ID FROM userdetails WHERE USER_ID IN (?, ?)";
cmd.Parameters.Add("?ID1", OdbcType.VarChar, 250).Value = email1;
cmd.Parameters.Add("?ID2", OdbcType.VarChar, 250).Value = email2;

Harap perhatikan penggunaan ? (tanda tanya) bukannya @ (di tanda) dalam nama parameter. Meskipun perhatikan bahwa substitusi nilai parameter dalam hal ini tidak ada hubungannya dengan namanya, tetapi hanya dengan urutannya dengan koleksi parameter.

Semoga membantu :-)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengisi tanggal dan nilai yang hilang dalam data yang dipartisi?

  2. Bagaimana cara menyisipkan beberapa baris dalam SQL menggunakan prosedur tersimpan?

  3. Pilih baris di mana nilai kolom telah berubah

  4. Izin Layanan Pelaporan di SQL Server R2 SSRS

  5. Instal Azure Data Studio di Ubuntu 18.04