这里我的数据记录中的一个字段可以超过8000个字符的nvarchar,并寻找一个更大的数据类型,例如大约9000个字符,任何想法?
起初我使用的是NvarChar(8000)
,在找到一些可以通过此边界后,我使用了NText
看看接下来会发生什么,实体框架似乎可以按预期完成工作而不定义任何Insert statement
和Data Adapter
,在编程期间系统更改为数据适配器,我应该完成工作一个Insert命令,现在定义的参数如下所示:
cmdIns.Parameters.Add("@story", SqlDbType.NText, 16, "Story")
似乎使用EF
时会自动增加 16 的限制但不会使用Data Adapter
(它只会插入16个字符数据),
真的不知道(不记得了)EF的测试是否通过了大于 8000 的项目?
如果是这样,我很好奇原因。
情况是决定在此大型数据字段的插入点上使用正确的数据类型及其等效工作参数。
注意:此处使用SQL Server CE
修改:
抱歉,我当时不得不去,
应该使用的数据类型是NTEXT
,此处没有其他选择
但定义**insertion Statement and parameter**
有点麻烦,
遗憾的是,没有一种建议的方法能够完成与我给出的作品类似的所需工作。
答案 0 :(得分:1)
每当要通过指定名称和值来添加参数时,请使用AddWithValue。喜欢这个命令.Parameters.AddWithValue(“@ story”,故事);
答案 1 :(得分:1)
如果我正确地理解了你的问题,你可以做这样的事情,省略大小,因为没有必要:
cmdIns.Parameters.Add( new SqlParameter( "story", SqlDbType.NText )
{
Value = yourVariable;
} );