正在尝试理解字符串的SqlParameterCollection.Add()大小参数

本文关键字:Add 参数 SqlParameterCollection 字符串 | 更新日期: 2023-09-27 18:20:04

我正在尝试理解SqlParameterCollection.Add()方法中的size参数。简单阅读:

Int32的大小。

真的没有帮助。

比方说,我的SQL Server表列是这样定义的:

CREATE TABLE myTable
  ([col1] NVARCHAR(5))

因此,当我向该表添加新行时:

string strSQL = "INSERT INTO myTable ([col1]) " +
    "VALUES (@strCol1)";
string strValue = "abcdef";
using (SqlCommand cmd = new SqlCommand(strSQL, connection))
{
    cmd.Parameters.Add("@strCol1", SqlDbType.NText, 5).Value =
         strValue;
    cmd.ExecuteNonQuery();
}

将向我的col1列添加什么值?还是cmd.Parameters.Add会抛出异常?

正在尝试理解字符串的SqlParameterCollection.Add()大小参数

您不会得到任何异常,"abcde"将插入到您的表

您可以找到SqlParameter.Size属性的完整文档。

根据文档,您可以看到该值将被截断以匹配大小,并且您不会收到异常。