ADO.净:SqlParameterCollection.添加方法(String, SqlDbType, Int32).

本文关键字:String SqlDbType Int32 方法 SqlParameterCollection 添加 ADO | 更新日期: 2023-09-27 18:01:38

对于SqlCommand.Parameters.Add方法重载,这里包括Size参数在MSDN中规定:

"此重载在添加a的参数时非常有用可变长度数据类型,如varchar或二进制。"

,并给出了示例:

public void AddSqlParameter(SqlCommand command) 
{
    SqlParameter param = new SqlParameter(
        "@Description", SqlDbType.NVarChar, 16);
    param.Value = "Beverages";
    command.Parameters.Add(param);
}

我很难更准确地理解:

  1. Size参数应该提供什么?DB结构中的列长度或当前参数值的长度或其中的Min() ?还是别的什么?

  2. 它是否仅适用于"varcharbinary"或其他文字Sql Server类型,例如char, nvarchar等?

编辑:我的具体案例:如果在DB列namevarchar(10),但我在c# String lName的长度为15,我必须把参数。添加:10或lName.Length或…?

ADO.净:SqlParameterCollection.添加方法(String, SqlDbType, Int32).

如果没有在Size参数中显式设置Size,则从dbType参数的值推断。

SqlParameter Constructor (String, SqlDbType, Int32)

Size属性用于二进制和字符串类型。对于SqlType类型的参数。字符串,Size表示Unicode字符的长度。对于SqlType.Xml类型的参数,Size将被忽略。

SqlParameter。大小属性