首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

数据库施用了nvarchar(MAX)时,asp.net(C#)中cmd.Parameters.Add该如果使用

2011-12-24 
数据库使用了nvarchar(MAX)时,asp.net(C#)中cmd.Parameters.Add该如果使用?源例子:cmd.Parameters.Add(@t

数据库使用了nvarchar(MAX)时,asp.net(C#)中cmd.Parameters.Add该如果使用?
源例子:
cmd.Parameters.Add("@title", SqlDbType.NVarChar, 255);
cmd.Parameters.Add("@body", SqlDbType.NText);

现在要把ntext改为nvarchar(MAX)

[解决办法]
md.Parameters.Add("@title", SqlDbType.NVarChar, 数据库里的字段长度);
[解决办法]
body如果太长的话估计你用NVarchar存不进去。


[解决办法]
byte[] data = ...;
cmd.Parameters.Add("@data", SqlDbType.VarBinary, data.Length); 

[解决办法]
up
cmd.Parameters.Add("@data", SqlDbType.NVarChar,255);
[解决办法]
在存储过程里定义参数的时候用 @body nvarchar(Max) ,
必须和表字段里的类型值 保持一致,选择 varchar(MAX) 。

cmd.Parameters.Add("@body", SqlDbType.NVarChar); 

[解决办法]
好像是4000,
varchar是8000,
ntext不限长度。
[解决办法]
在存储过程里定义参数的时候用 @body nvarchar(Max) , 
必须和表字段里的类型值 保持一致,选择 varchar(MAX) 。 

正解

cmd.Parameters.Add("@body", SqlDbType.NVarChar); [color=#FF0000][/color]
[解决办法]
cmd.Parameters.Add("@body", SqlDbType.NVarChar); 

不写长度
或者写数据库支持的max长度 应该是8000

热点排行