Freigeben über


SqlParameter Klasse

Definition

Stellt einen Parameter für einen SqlCommand und optional für seine Zuordnung zu DataSet-Spalten dar. Diese Klasse kann nicht vererbt werden. Weitere Informationen zu Parametern finden Sie unter Konfigurieren von Parametern.

public ref class SqlParameter sealed : System::Data::Common::DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(Microsoft.Data.SqlClient.SqlParameter+SqlParameterConverter))]
public sealed class SqlParameter : System.Data.Common.DbParameter, ICloneable
public sealed class SqlParameter : System.Data.Common.DbParameter, ICloneable
[<System.ComponentModel.TypeConverter(typeof(Microsoft.Data.SqlClient.SqlParameter+SqlParameterConverter))>]
type SqlParameter = class
    inherit DbParameter
    interface IDbDataParameter
    interface IDataParameter
    interface ICloneable
type SqlParameter = class
    inherit DbParameter
    interface IDataParameter
    interface IDbDataParameter
    interface ICloneable
Public NotInheritable Class SqlParameter
Inherits DbParameter
Implements ICloneable
Vererbung
SqlParameter
Attribute
Implementiert

Beispiele

Im folgenden Beispiel werden mehrere Instanzen von SqlParameter über die SqlParameterCollection -Auflistung innerhalb von SqlDataAdaptererstellt. Diese Parameter werden verwendet, um Daten aus der Datenquelle auszuwählen und die Daten in den DataSetzu speichern. In diesem Beispiel wird davon ausgegangen, dass ein DataSet und ein SqlDataAdapter bereits mithilfe des entsprechenden Schemas, der entsprechenden Befehle und der entsprechenden Verbindung erstellt wurden. Weitere Informationen und weitere Beispiele zur Verwendung von Parametern finden Sie unter Abrufen und Ändern von Daten in ADO.NET und Konfigurieren von Parametern.

using Microsoft.Data.SqlClient;
using System.Xml;
using System.Data.Common;
using System.Windows.Forms;

public class Form1 : Form
{
    protected DataSet categoriesDataSet;
    protected DataGrid dataGrid1;
    protected SqlDataAdapter categoriesAdapter;


    public void AddSqlParameters()
    {
        // ...
        // create categoriesDataSet and categoriesAdapter
        // ...

        categoriesAdapter.SelectCommand.Parameters.Add(
          "@CategoryName", SqlDbType.VarChar, 80).Value = "toasters";
        categoriesAdapter.SelectCommand.Parameters.Add(
          "@SerialNum", SqlDbType.Int).Value = 239;
        categoriesAdapter.Fill(categoriesDataSet);

    }
}

Hinweise

Bei Parameternamen wird die Groß- und Kleinschreibung nicht berücksichtigt.

Hinweis

Namenlose Parameter, auch als Ordnungsparameter bezeichnet, werden vom .NET Framework-Datenanbieter für SQL Server nicht unterstützt.

Weitere Informationen sowie zusätzlichen Beispielcode, der die Verwendung von Parametern veranschaulicht, finden Sie unter Befehle und Parameter.

Konstruktoren

SqlParameter()

Initialisiert eine neue Instanz der SqlParameter-Klasse.

SqlParameter(String, Object)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die den Parameternamen und einen Wert des neuen SqlParameter verwendet.

SqlParameter(String, SqlDbType)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die den Parameternamen und den Datentyp verwendet.

SqlParameter(String, SqlDbType, Int32)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die den Parameternamen, den SqlDbType und die Größe verwendet.

SqlParameter(String, SqlDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die den Parameternamen, den Typ des Parameters, die Größe des Parameters, ein ParameterDirection, die Genauigkeit des Parameters, die Skalierung des Parameters, die Quellspalte, ein zu verwendendes DataRowVersion und den Wert des Parameters verwendet.

SqlParameter(String, SqlDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object, String, String, String)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die Folgendes verwendet: den Parameternamen, den Parametertyp, die Parameterlänge, die Richtung, die Genauigkeit, die Skala, den Namen der Quellspalte, einen der DataRowVersion-Werte, einen booleschen Wert für die Quellspaltenzuordnung, den Wert von SqlParameter, den Namen der Datenbank, in der sich die Schemaauflistung für diese XML-Instanz befindet, das besitzende relationale Schema, in dem sich die Schemaauflistung für diese XML-Instanz befindet, und den Namen der Schemaauflistung für diesen Parameter.

SqlParameter(String, SqlDbType, Int32, String)

Initialisiert eine neue Instanz der SqlParameter-Klasse, die den Parameternamen, den SqlDbType, die Größe und den Quellspaltennamen verwendet.

Eigenschaften

CompareInfo

Ruft das CompareInfo-Objekt ab, das definiert, wie für diesen Parameter Zeichenfolgenvergleiche durchgeführt werden sollen, oder legt dieses fest.

DbType

Ruft den SqlDbType des Parameters ab oder legt ihn fest.

Direction

Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob der Parameter nur zur Eingabe, nur zur Ausgabe oder bidirektional verwendet wird oder ob es sich um einen Parameter für den Rückgabewert einer gespeicherten Prozedur handelt.

ForceColumnEncryption

Erzwingt die Verschlüsselung eines Parameters bei Verwendung von Always Encrypted. Wenn SQL Server den Treiber informiert, dass der Parameter nicht verschlüsselt werden muss, tritt bei der Abfrage, die diesen Parameter verwendet, ein Fehler auf. Diese Eigenschaft bietet zusätzlichen Schutz vor Angriffen, bei denen ein kompromittierter SQL Server falsche Verschlüsselungsmetadaten für den Client bereitstellt, was zur Offenlegung von Daten führen kann.

IsNullable

Ruft einen Wert ab, der angibt, ob der Parameter NULL-Werte akzeptiert, oder legt diesen fest. IsNullable wird nicht verwendet, um den Parameterwert zu überprüfen, und verhindert nicht, dass beim Ausführen eines Befehls ein NULL-Wert gesendet oder empfangen wird.

LocaleId

Ruft den Gebietsschemabezeichner ab, der Konventionen und die Sprache für eine bestimmte Region bestimmt, oder legt diesen fest.

Offset

Ruft den Offset zur Value-Eigenschaft ab oder legt diesen fest.

ParameterName

Ruft den Namen der SqlParameter ab oder legt diesen fest.

Precision

Ruft die maximale Anzahl von Stellen ab, die verwendet werden, um die Value-Eigenschaft darzustellen, oder legt diese fest.

Scale

Ruft die Anzahl der Dezimalstellen ab, in die Value aufgelöst wird, oder legt diese fest.

Size

Ruft die maximale Größe der Daten in der Spalte in Byte ab oder legt diese fest.

SourceColumn

Ruft den Namen der Quellspalte ab, die dem DataSet zugeordnet ist und zum Laden oder Zurückgeben des Value verwendet wird, oder legt diesen Namen fest.

SourceColumnNullMapping

Legt einen Wert fest, der angibt, ob die Quellspalte NULL-Werte zulässt, oder ruft ihn ab. Dadurch kann SqlCommandBuilder ordnungsgemäß Update-Anweisungen für Spalten generieren, die NULL-Werte zulassen.

SourceVersion

Ruft die DataRowVersion ab, die beim Laden von Value verwendet werden soll, oder legt diese fest.

SqlDbType

Ruft den SqlDbType des Parameters ab oder legt ihn fest.

SqlValue

Dient zum Abrufen oder Festlegen des Werts des Parameters als SQL-Typ.

TypeName

Dient zum Abrufen oder Festlegen des Typnamens für einen Tabellenwertparameter.

UdtTypeName

Ruft eine string ab, die einen benutzerdefinierten Typ als Parameter darstellt, oder legt diese fest.

Value

Ruft den Wert des Parameters ab oder legt diesen fest.

XmlSchemaCollectionDatabase

Ruft den Namen der Datenbank ab, in der sich die Schemaauflistung für diese XML-Instanz befindet.

XmlSchemaCollectionName

Ruft den Namen der Schemaauflistung für diese XML-Instanz ab.

XmlSchemaCollectionOwningSchema

Das besitzende relationale Schema, in dem sich die Schemaauflistung für diese XML-Instanz befindet.

Methoden

ResetDbType()

Setzt den diesem SqlParameter zugeordneten Typ zurück.

ResetSqlDbType()

Setzt den diesem SqlParameter zugeordneten Typ zurück.

ToString()

Ruft eine Zeichenfolge ab, die den ParameterName enthält.

Explizite Schnittstellenimplementierungen

ICloneable.Clone()

Eine Beschreibung dieses Elements finden Sie unter Clone().

Gilt für:

Weitere Informationen