Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis: Dieser Namespace oder Member bzw. diese Klasse wird nur von .NET Framework, Version 1.1, unterstützt.
Erstellt eine vorbereitete (oder kompilierte) Version des Befehls für die Datenquelle.
Public Overridable Sub Prepare() Implements IDbCommand.Prepare
[C#]
public virtual void Prepare();
[C++]
public: virtual void Prepare();
[JScript]
public function Prepare();
Implementiert
Ausnahmen
| Ausnahmetyp | Bedingung |
|---|---|
| InvalidOperationException | Connection wurde nicht festgelegt.
– oder – Connection ist nicht Open. |
Hinweise
Wenn die CommandType-Eigenschaft auf TableDirect festgelegt ist, führt Prepare keine Aktion aus.
Geben Sie vor dem Aufruf von Prepare den Datentyp der einzelnen Parameter in der vorzubereitenden Anweisung an. Bei allen Parametern mit einem Datentyp variabler Länge müssen Sie die Size-Eigenschaft auf die maximal benötigte Größe festlegen. Wenn diese Bedingung nicht erfüllt sind, gibt Prepare einen Fehler zurück.
Wenn Sie eine Execute-Methode nach dem Aufruf von Prepare aufrufen, wird jeder Parameterwert, der größer als der durch die Size-Eigenschaft angegebene Wert ist, automatisch auf die ursprünglich angegebene Größe des Parameters gekürzt, und es werden keine Kürzungsfehler zurückgegeben.
Beispiel
Public Sub SqlCeCommandPrepare()
Dim id As Integer = 20
Dim desc As String = "myFirstRegion"
Dim conn As SqlCeConnection = New SqlCeConnection("Data Source = Northwind.sdf;")
conn.Open()
Dim command As SqlCeCommand = conn.CreateCommand()
' Create and prepare a SQL statement.
command.CommandText = "INSERT INTO Region (RegionID, RegionDescription) VALUES (?, ?)"
' Note: Even though named parameterized queries are not supported, we still need
' to provide unique parameter names so that we can manipulate parameter collection;
command.Parameters.Add("@id", id)
command.Parameters.Add("@desc", desc)
' Calling Prepare after having set the Commandtext and parameters.
command.Prepare()
command.ExecuteNonQuery()
' Change parameter values and call ExecuteNonQuery.
command.Parameters(0).Value = 21
command.Parameters(1).Value = "mySecondRegion"
command.ExecuteNonQuery()
End Sub
[C#]
public void SqlCeCommandPrepareEx() {
int id = 20;
string desc = "myFirstRegion" ;
SqlCeConnection conn = new SqlCeConnection("Data Source = Northwind.sdf;");
conn.Open();
SqlCeCommand command = conn.CreateCommand();
// Create and prepare a SQL statement.
command.CommandText = "INSERT INTO Region (RegionID, RegionDescription) VALUES (?, ?)";
// Note: Even though named parameterized queries are not supported, we still need
// to provide unique parameter names so that we can manipulate parameter collection;
command.Parameters.Add( "@id", id) ;
command.Parameters.Add( "@desc", desc) ;
// Calling Prepare after having set the Commandtext and parameters.
command.Prepare() ;
command.ExecuteNonQuery();
// Change parameter values and call ExecuteNonQuery again.
command.Parameters[0].Value = 21;
command.Parameters[1].Value = "mySecondRegion";
command.ExecuteNonQuery();
}
[C++, JScript] Für C++ oder JScript ist kein Beispiel verfügbar. Klicken Sie zum Anzeigen eines Beispiels für Visual Basic oder C# in der linken oberen Ecke der Seite auf die Schaltfläche "Sprachfilter"
.
Anforderungen
Plattformen: .NET Compact Framework - Windows CE .NET
.NET Framework-Sicherheit:
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.
Siehe auch
SqlCeCommand-Klasse | SqlCeCommand-Member | System.Data.SqlServerCe-Namespace