OracleCommand.Parameters Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
OracleParameterCollection öğesini alır.
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
Özellik Değeri
SQL deyiminin veya saklı yordamın parametreleri. Varsayılan değer boş bir topluluktur.
Örnekler
Aşağıdaki örnek bir OracleCommand oluşturur ve parametrelerini görüntüler. Bunu başarmak için yöntemine, SQL SELECT deyimi olan bir sorgu dizesi ve bir nesne dizisi OracleParameter geçirilirOracleConnection.
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
Açıklamalar
CommandType özelliği olarak StoredProcedure
CommandText ayarlandığında, özelliği saklı yordamın adına ayarlanmalıdır. Saklı yordam adında özel karakterler varsa, kullanıcının kaçış karakteri söz dizimini kullanması gerekebilir. Execute yöntemlerinden birini çağırdığınızda komut bu saklı yordamı yürütür.
Oracle için .NET Framework Veri Sağlayıcısı, tarafından çağrılan OracleCommand bir SQL deyimine parametre geçirmek için soru işareti (?) yer tutucusunu CommandType.Text
desteklemez. Bu durumda adlandırılmış parametreler kullanılmalıdır. Örnek:
SELECT * FROM Customers WHERE CustomerID = :pCustomerID
tarafından çağrılan OracleCommandCommandType.Text
bir SQL deyiminde adlandırılmış parametreler kullanırken, parametre adından önce iki nokta üst üste (:)) girmelisiniz. Ancak, saklı yordamda veya kodunuzun başka bir yerinde adlandırılmış parametreye başvururken (örneğin, özelliğine Parameters nesne eklerkenOracleParameter), adlandırılmış parametrenin önüne iki nokta üst üste (:)) eklemeyin. Oracle için .NET Framework Veri Sağlayıcısı, iki nokta üst üsteyi otomatik olarak sağlar.