案例分享:前端软件使用正常,后台日志文件经常报错‘字符串或二进制数据将在表T_BAS_PLUGINL,列XXX中被截断’
问题描述
前端软件使用正常,后台日志文件经常报错:
字符串或二进制数据将在表“ProdLog.dbo.T_BAS_PLUGINLOG”,列“FOBJECTTYPEID”中被截断;
如下图所示。
分析处理过程
1、查询云星空数据字典,没有找到这个表T_BAS_PLUGINLOG;
2、仔细看日志,发现是日志库‘ProdLog’;
3、在测试环境上查看日志库里面的这个表“T_BAS_PLUGINLOG”的列“FOBJECTTYPEID”;
执行sp_help T_BAS_PLUGINLOG
长度显示是100字节,如下图所示;
直接在SQL里面展开表,看字段的话,显示的是50字符;如下图所示;
4、查看报错日志里面提示的值的原内容是
“101010200000000000035056E5B15F388FB(业务类型_0102(半成品))”;
截断值:
“101010200000000000035056E5B15F388FB(业务类型_0102(半成品)”
也就是被截断了一个“)”;
直接看这个内容是确实超过了50字符的;
说明:
在Unicode编码中,无论是英文还是中文,每个字符都占用两个字节。
5、处理这报错的话,可以由业务前端控制这个字段的值不要超过50字符;
如果实际就是需要超过的话,那就后台修改这个字段的长度即可,比如改为200字节。可执行如下语句;
alter table T_BAS_PLUGINLOG
alter column FOBJECTTYPEID nvarchar(200)
扩展知识
案例分享:前端软件使用正常,后台日志文件经常报错‘字符串或二进制数据将在表T_BAS_PLUGINL,列XXX中被截断’
问题描述前端软件使用正常,后台日志文件经常报错:字符串或二进制数据将在表“ProdLog.dbo.T_BAS_PLUGINLOG”,列“FOBJECTTYPEID”中被截...
点击下载文档
本文2024-09-16 18:09:36发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-20331.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章