SQL Server之莫名其妙的空格-易勋
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> ADP及SQL SERVER


SQL Server之莫名其妙的空格

发表时间:2020/1/23 20:50:46 评论(0) 浏览(4072)  评论 | 加入收藏 | 复制
   
摘 要:最近,某个表中有一些字段是nvarchar的类型,但是在有效字符后面确出现了莫名其妙的空格,这是怎么回事呢?
正 文:

情况如下图,在YiXun之后存在25个空格:

进入表设计视图一看,字段类型确实是nvarchar(30)类型(变长)

而且只有两条记录存在这样的问题。

由于RequestBy这个字段数据需要作为一个检测条件,如果“YiXun”变成“YiXun                         ”,这样会导致判定不通过。

那么问题究竟出在哪里呢?从客户端的赋值、保存、加载等相关的Debug和对SQL Server检查均未找出原因,这个问题陷入了困局。

蓦然回首,问题还是表结构

转机出现在备份数据库中,原来当时新建表的时候,由于操作失误,将RequestBy和GNC字段的类型设置为了nchar(30)类型(定长),虽然在后面的调整中发现了这个问题,并调整了字段类型,但是nchar转换为nvarchar的时候,会保留在nchar类型是由于定长规则产生的空格,但是当时并未处理已有数据。直到在测试对RequestBy字段的比对功能的时候才发现这个问题。


PS.上文中空格为定长字段类型的补充字符


参考:

nchar 和 nvarchar (Transact-SQL)



Access软件网交流QQ群(群号:198465573)
 
 相关文章
Access快速开发平台升迁SQL Server后操作日志不显示的...  【宏鹏  2019/12/18】
【转】阿里云ECS云服务器通过外网IP无法连接SQLSERVER的...  【金宇  2019/12/24】
阿里云ECS安装SQL Server,本地无法连接问题排查思路(转...  【宏鹏  2019/12/25】
在 SQL 函数中计算字段  【杨雪  2020/1/1】
SQL 特定查询  【杨雪  2020/1/17】
常见问答
技术分类
相关资源
文章搜索
关于作者

易勋

文章分类

文章存档

友情链接