SqlParameter 类

定义

表示 SqlCommand 的参数,或者其与 DataSet 列的映射。 此类不能被继承。 有关参数的详细信息,请参阅配置参数和参数数据类型

public ref class SqlParameter sealed : System::Data::Common::DbParameter, ICloneable
public ref class SqlParameter sealed : System::Data::Common::DbParameter
public ref class SqlParameter sealed : MarshalByRefObject, ICloneable, System::Data::IDbDataParameter
public sealed class SqlParameter : System.Data.Common.DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlParameter+SqlParameterConverter))]
public sealed class SqlParameter : System.Data.Common.DbParameter, ICloneable
public sealed class SqlParameter : System.Data.Common.DbParameter
[System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlParameterConverter))]
public sealed class SqlParameter : MarshalByRefObject, ICloneable, System.Data.IDbDataParameter
type SqlParameter = class
    inherit DbParameter
    interface ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlParameter+SqlParameterConverter))>]
type SqlParameter = class
    inherit DbParameter
    interface ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlParameter+SqlParameterConverter))>]
type SqlParameter = class
    inherit DbParameter
    interface IDbDataParameter
    interface IDataParameter
    interface ICloneable
type SqlParameter = class
    inherit DbParameter
[<System.ComponentModel.TypeConverter(typeof(System.Data.SqlClient.SqlParameterConverter))>]
type SqlParameter = class
    inherit MarshalByRefObject
    interface IDbDataParameter
    interface IDataParameter
    interface ICloneable
Public NotInheritable Class SqlParameter
Inherits DbParameter
Implements ICloneable
Public NotInheritable Class SqlParameter
Inherits DbParameter
Public NotInheritable Class SqlParameter
Inherits MarshalByRefObject
Implements ICloneable, IDbDataParameter
继承
SqlParameter
继承
继承
SqlParameter
属性
实现

示例

以下示例通过 SqlParameterCollection 中的 SqlDataAdapter集合创建 的多个实例SqlParameter。 这些参数用于从数据源中选择数据,并将数据 DataSet放入 。 此示例假定 DataSet 已使用适当的架构、命令和连接创建了 和 SqlDataAdapter 。 有关使用参数的详细信息和其他示例,请参阅 检索和修改 ADO.NET 中的数据配置参数和参数数据类型

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);
}
Public Sub 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)
End Sub

注解

参数名称不区分大小写。

注意

无名称(也称为序号)参数不受 SQL Server .NET Framework 数据提供程序支持。

有关详细信息,以及演示如何使用参数的其他示例代码,请参阅 命令和参数

构造函数

SqlParameter()

初始化 SqlParameter 类的新实例。

SqlParameter(String, Object)

初始化 SqlParameter 类的新实例,该类使用参数名称和新 SqlParameter 的值。

SqlParameter(String, SqlDbType)

使用提供的参数名称和数据类型初始化 SqlParameter 类的新实例。

SqlParameter(String, SqlDbType, Int32)

使用参数名称、SqlDbType 和大小初始化 SqlParameter 类的新实例。

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

使用提供的参数名称、参数类型、参数大小、ParameterDirection、参数精度、参数小数位数、源列、要使用的 DataRowVersion 以及参数值初始化 SqlParameter 类的新实例。

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

使用以下信息初始化 SqlParameter 类的新实例:参数名、参数类型、参数长度、参数传递方向、参数精度、参数的范围、源列名、DataRowVersion 的一个值、源列映射的布尔值、SqlParameter 的值、此 XML 实例的架构集所在的数据库名称、此 XML 实例的架构集所在的关系型架构,以及此参数的架构集的名称。

SqlParameter(String, SqlDbType, Int32, String)

使用提供的参数名称、SqlDbType、大小和源列名初始化 SqlParameter 类的新实例。

属性

CompareInfo

获取或设置 CompareInfo 对象,它定义应如何对此参数执行字符串比较。

DbType

获取或设置参数的 SqlDbType

Direction

获取或设置一个值,该值指示参数是只可输入的参数、只可输出的参数、双向参数还是存储过程返回值参数。

ForceColumnEncryption

当使用 Always Encrypted 时强制执行参数的加密。 如果 SQL Server 告知驱动程序参数不需加密,则使用该参数的查询会失败。 此属性提供针对安全攻击的额外保护,这些攻击涉及受损 SQL Server 向客户端提供不正确的加密元数据,这可能会导致数据泄漏。

IsNullable

获取或设置一个值,该值指示参数是否接受 null 值。 IsNullable 不用于验证参数的值,并且在执行命令时不会阻止发送或接收 null 值。

LocaleId

获取或设置确定某一特定区域的约定和语言设置的区域设置标识符。

Offset

获取或设置 Value 属性的偏移量。

ParameterName

获取或设置 SqlParameter 的名称。

Precision

获取或设置用于表示 Value 属性的最大位数。

Scale

获取或设置所解析的 Value 的小数位数。

Size

获取或设置列中数据的最大大小(字节)。

SourceColumn

获取或设置源列的名称,该源列映射到 DataSet 并用于加载或返回 Value

SourceColumnNullMapping

获取或设置一个值,该值指示源列是否可以为 null。 通过此操作,SqlCommandBuilder 能够为可以为 null 的列正确地生成 Update 语句。

SourceVersion

获取或设置在加载 DataRowVersion 时使用的 Value

SourceVersion

获取或设置在加载 DataRowVersion 时使用的 Value

(继承自 DbParameter)
SqlDbType

获取或设置参数的 SqlDbType

SqlValue

获取或设置作为 SQL 类型的参数的值。

TypeName

获取或设置表值参数的类型名称。

UdtTypeName

获取或设置作为参数的表示用户定义类型的 string

Value

获取或设置参数的值。

XmlSchemaCollectionDatabase

获取此 XML 实例的架构集合所在的数据库的名称。

XmlSchemaCollectionName

获取此 XML 实例的架构集合的名称。

XmlSchemaCollectionOwningSchema

此 XML 实例的架构集合所在的所属关系架构。

方法

CreateObjRef(Type)

创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。

(继承自 MarshalByRefObject)
Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetLifetimeService()
已过时.

检索控制此实例的生存期策略的当前生存期服务对象。

(继承自 MarshalByRefObject)
GetType()

获取当前实例的 Type

(继承自 Object)
InitializeLifetimeService()
已过时.

获取生存期服务对象来控制此实例的生存期策略。

(继承自 MarshalByRefObject)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
MemberwiseClone(Boolean)

创建当前 MarshalByRefObject 对象的浅表副本。

(继承自 MarshalByRefObject)
ResetDbType()

重置与此 SqlParameter 关联的类型。

ResetSqlDbType()

重置与此 SqlParameter 关联的类型。

ToString()

获取一个包含 ParameterName 的字符串。

显式接口实现

ICloneable.Clone()

有关此成员的说明,请参见 Clone()

IDataParameter.SourceVersion

获取或设置要在加载 Value 时使用的 DataRowVersion

(继承自 DbParameter)
IDbDataParameter.Precision

指示数值参数的精度。

(继承自 DbParameter)
IDbDataParameter.Scale

有关此成员的说明,请参见 Scale

(继承自 DbParameter)

适用于

另请参阅