我用的是nchar(4000)类型,在数据库中可以插入数据成功,没有提示这种错误,但是我在应用程序里插入就提示:
无法创建大小为32150的行,该值大于允许的值8060?
应用程序代码如下:
/// <summary>
/// 添加店铺情况信息
/// </summary>
/// <param name="list">参数列表</param>
/// <returns>行数为一返回TRUE</returns>
public bool InsertT_StoreCondition(ArrayList list)
{
SqlParameter[] par = GetRegisterParameters();
par[0].Value = list[0].ToString();
par[1].Value = list[1].ToString();
par[2].Value = list[2].ToString();
par[3].Value = list[3].ToString();
par[4].Value = list[4].ToString();
par[5].Value = list[5].ToString();
par[6].Value = list[6].ToString(); par[7].Value = list[7].ToString();
par[8].Value = list[8].ToString();
par[9].Value = list[9].ToString();
par[10].Value = list[10].ToString();
par[11].Value = list[11].ToString();
par[12].Value = list[12].ToString();
par[13].Value = list[13].ToString(); par[14].Value = list[14].ToString();
par[15].Value = list[15].ToString();
par[16].Value = list[16].ToString();
par[17].Value = list[17].ToString();
par[18].Value = list[18].ToString();
par[19].Value = list[19].ToString(); int i = SqlHelper.ExecuteNonQuery(SqlHelper.CONN_STRING, CommandType.StoredProcedure,
PROC_INSERT_T_StoreCondition, par);
if (i == 1)
{
return true;
}
else
{
return false;
}
} /// 初始化参数集
/// </summary>
/// <returns></returns>
private SqlParameter[] GetRegisterParameters()
{
SqlParameter[] pas = SqlHelper.GetCachedParameters(PROC_INSERT_T_StoreCondition); if (pas == null)
{
pas = new SqlParameter[]
{
new SqlParameter(PARM_CONDITIONCODE,SqlDbType.VarChar,20),
new SqlParameter(PARM_CREATE,SqlDbType.VarChar,10),
new SqlParameter(PARM_STORECODE,SqlDbType.VarChar,20),
new SqlParameter(PARM_CHANGEUSAGE,SqlDbType.Int),
new SqlParameter(PARM_LINKMAN,SqlDbType.Char,10),
new SqlParameter(PARM_MOBILE,SqlDbType.Char,20),
new SqlParameter(PARM_CONSTRUCT,SqlDbType.NChar,4000),
new SqlParameter(PARM_BASECONST,SqlDbType.NChar,4000),
new SqlParameter(PARM_SOCONDITIONS,SqlDbType.NChar,4000),
new SqlParameter(PARM_FIREPROTECTION,SqlDbType.NChar,4000),
new SqlParameter(PARM_STOREHOUSE,SqlDbType.NChar,4000),
new SqlParameter(PARM_AD,SqlDbType.NChar,4000),
new SqlParameter(PARM_FITMENT,SqlDbType.NChar,4000),
new SqlParameter(PARM_REMARK,SqlDbType.NChar,4000),
new SqlParameter(PARM_PICNUM,SqlDbType.Char,5),
new SqlParameter(PARM_VIDEONUM,SqlDbType.Char,5),
new SqlParameter(PARM_PPICNUM,SqlDbType.Char,5),
new SqlParameter(PARM_MAPNAME,SqlDbType.NChar,50),
new SqlParameter(PARM_MAPINSTRU,SqlDbType.NChar,255),
new SqlParameter(PARM_IMAGEPATH,SqlDbType.NChar,255)
};
SqlHelper.CacheParameters(PROC_INSERT_T_StoreCondition, pas);
}
return pas;
}
请问这是为什么呢,我用的是存储过程,在查询分析器里可以执行成功:如:
exec proc_INSERT_T_StoreCondition --执行存储过程
'5448100710110939','2010-09-07','009',1,'4','4',
'4?4?true?false?true?false?true?false?false?false?true?false?',
'4?4?4?false?true?false?false?true?false?false?true?false?true?4?',
'false?true?false?true?false?false?false?4?false?false?true?false?false?false?false?false?true?false?true?false?false?false?4?false?true?false?4?4?4?4?',
'false?true?false?false?false?true?false?true?false?false?true?false?true?false?true?false?false?true?false?true?4?',
'4?4?4?4?4?4?4?4?4?',
'4?4?4?4?4?4?4?4?4?4?4?4?true?false?false?4?4?4?true?false?false?4?4?4?true?false?false?false?false?true?false?true?false?',
'true?false?false?true?44??false?false?true?false?true?4?4?4?4?4?true?true?4?4?4?true?false?true?false?',
'11111','11','1','1','','',''
无法创建大小为32150的行,该值大于允许的值8060?
应用程序代码如下:
/// <summary>
/// 添加店铺情况信息
/// </summary>
/// <param name="list">参数列表</param>
/// <returns>行数为一返回TRUE</returns>
public bool InsertT_StoreCondition(ArrayList list)
{
SqlParameter[] par = GetRegisterParameters();
par[0].Value = list[0].ToString();
par[1].Value = list[1].ToString();
par[2].Value = list[2].ToString();
par[3].Value = list[3].ToString();
par[4].Value = list[4].ToString();
par[5].Value = list[5].ToString();
par[6].Value = list[6].ToString(); par[7].Value = list[7].ToString();
par[8].Value = list[8].ToString();
par[9].Value = list[9].ToString();
par[10].Value = list[10].ToString();
par[11].Value = list[11].ToString();
par[12].Value = list[12].ToString();
par[13].Value = list[13].ToString(); par[14].Value = list[14].ToString();
par[15].Value = list[15].ToString();
par[16].Value = list[16].ToString();
par[17].Value = list[17].ToString();
par[18].Value = list[18].ToString();
par[19].Value = list[19].ToString(); int i = SqlHelper.ExecuteNonQuery(SqlHelper.CONN_STRING, CommandType.StoredProcedure,
PROC_INSERT_T_StoreCondition, par);
if (i == 1)
{
return true;
}
else
{
return false;
}
} /// 初始化参数集
/// </summary>
/// <returns></returns>
private SqlParameter[] GetRegisterParameters()
{
SqlParameter[] pas = SqlHelper.GetCachedParameters(PROC_INSERT_T_StoreCondition); if (pas == null)
{
pas = new SqlParameter[]
{
new SqlParameter(PARM_CONDITIONCODE,SqlDbType.VarChar,20),
new SqlParameter(PARM_CREATE,SqlDbType.VarChar,10),
new SqlParameter(PARM_STORECODE,SqlDbType.VarChar,20),
new SqlParameter(PARM_CHANGEUSAGE,SqlDbType.Int),
new SqlParameter(PARM_LINKMAN,SqlDbType.Char,10),
new SqlParameter(PARM_MOBILE,SqlDbType.Char,20),
new SqlParameter(PARM_CONSTRUCT,SqlDbType.NChar,4000),
new SqlParameter(PARM_BASECONST,SqlDbType.NChar,4000),
new SqlParameter(PARM_SOCONDITIONS,SqlDbType.NChar,4000),
new SqlParameter(PARM_FIREPROTECTION,SqlDbType.NChar,4000),
new SqlParameter(PARM_STOREHOUSE,SqlDbType.NChar,4000),
new SqlParameter(PARM_AD,SqlDbType.NChar,4000),
new SqlParameter(PARM_FITMENT,SqlDbType.NChar,4000),
new SqlParameter(PARM_REMARK,SqlDbType.NChar,4000),
new SqlParameter(PARM_PICNUM,SqlDbType.Char,5),
new SqlParameter(PARM_VIDEONUM,SqlDbType.Char,5),
new SqlParameter(PARM_PPICNUM,SqlDbType.Char,5),
new SqlParameter(PARM_MAPNAME,SqlDbType.NChar,50),
new SqlParameter(PARM_MAPINSTRU,SqlDbType.NChar,255),
new SqlParameter(PARM_IMAGEPATH,SqlDbType.NChar,255)
};
SqlHelper.CacheParameters(PROC_INSERT_T_StoreCondition, pas);
}
return pas;
}
请问这是为什么呢,我用的是存储过程,在查询分析器里可以执行成功:如:
exec proc_INSERT_T_StoreCondition --执行存储过程
'5448100710110939','2010-09-07','009',1,'4','4',
'4?4?true?false?true?false?true?false?false?false?true?false?',
'4?4?4?false?true?false?false?true?false?false?true?false?true?4?',
'false?true?false?true?false?false?false?4?false?false?true?false?false?false?false?false?true?false?true?false?false?false?4?false?true?false?4?4?4?4?',
'false?true?false?false?false?true?false?true?false?false?true?false?true?false?true?false?false?true?false?true?4?',
'4?4?4?4?4?4?4?4?4?',
'4?4?4?4?4?4?4?4?4?4?4?4?true?false?false?4?4?4?true?false?false?4?4?4?true?false?false?false?false?true?false?true?false?',
'true?false?false?true?44??false?false?true?false?true?4?4?4?4?4?true?true?4?4?4?true?false?true?false?',
'11111','11','1','1','','',''
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货