OracleCommand.Parameters Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
OracleParameterCollectionMendapatkan .
public:
property System::Data::OracleClient::OracleParameterCollection ^ Parameters { System::Data::OracleClient::OracleParameterCollection ^ get(); };
public System.Data.OracleClient.OracleParameterCollection Parameters { get; }
member this.Parameters : System.Data.OracleClient.OracleParameterCollection
Public ReadOnly Property Parameters As OracleParameterCollection
Nilai Properti
Parameter pernyataan SQL atau prosedur tersimpan. Defaultnya adalah koleksi kosong.
Contoh
Contoh berikut membuat OracleCommand dan menampilkan parameternya. Untuk mencapai hal ini, metode diteruskan OracleConnection, string kueri yang merupakan pernyataan SQL SELECT, dan array OracleParameter objek.
public void CreateOracleCommand(OracleConnection connection,
string queryString, OracleParameter[] myParamArray)
{
OracleCommand command = new OracleCommand(queryString, connection);
command.CommandText =
"SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal";
for (int j = 0; j < myParamArray.Length; j++)
command.Parameters.Add(myParamArray[j]);
string message = "";
for (int i = 0; i < command.Parameters.Count; i++)
message += command.Parameters[i].ToString() + "\n";
Console.WriteLine(message);
using (OracleDataReader row = command.ExecuteReader())
{
while(row.Read())
{
Console.WriteLine(row.GetValue(0));
}
}
}
Public Sub CreateOracleCommand(ByVal connection As OracleConnection, _
ByVal queryString As String, ByVal prmArray() As OracleParameter)
Dim command As New OracleCommand(queryString, connection)
command.CommandText = _
"SELECT * FROM Emp WHERE Job = :pJob AND Sal = :pSal"
Dim j As Integer
For j = 0 To prmArray.Length - 1
command.Parameters.Add(prmArray(j))
Next j
Dim message As String = ""
Dim i As Integer
For i = 0 To command.Parameters.Count - 1
message += command.Parameters(i).ToString() + ControlChars.Cr
Next i
Console.WriteLine(message)
Dim reader As OracleDataReader = command.ExecuteReader
While reader.Read
Console.WriteLine(reader.GetValue(0))
End While
End Sub
Keterangan
CommandType Ketika properti diatur ke StoredProcedure
, CommandText properti harus diatur ke nama prosedur tersimpan. Pengguna mungkin diharuskan untuk menggunakan sintaks karakter escape jika nama prosedur tersimpan berisi karakter khusus. Perintah menjalankan prosedur tersimpan ini saat Anda memanggil salah satu metode Execute.
Penyedia Data .NET Framework untuk Oracle tidak mendukung tempat penampung tanda tanya (?) untuk meneruskan parameter ke pernyataan SQL yang OracleCommand dipanggil oleh dari CommandType.Text
. Dalam hal ini, parameter bernama harus digunakan. Contohnya:
SELECT * FROM Customers WHERE CustomerID = :pCustomerID
Saat menggunakan parameter bernama dalam pernyataan SQL yang OracleCommand dipanggil oleh , CommandType.Text
Anda harus mendahului nama parameter dengan titik dua (:). Namun, dalam prosedur tersimpan, atau ketika merujuk ke parameter bernama di tempat lain dalam kode Anda (misalnya, saat menambahkan OracleParameter objek ke Parameters properti ), jangan mendahului parameter bernama dengan titik dua (:). Penyedia Data .NET Framework untuk Oracle memasok titik dua secara otomatis.