VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 95|回复: 0

使用CRecordset.GetFieldValue(short, Cstring)获取数据库字段变?号

[复制链接]
53_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-16 15:58:16 | 显示全部楼层 |阅读模式
数据库是Oracle,字段类型是varchar2(50),设置的字符集是CharacterSet=AL32UTF8;  字段中存的是:𠅤䶮㼆,3个字,Unicode编码是:\u20164,\4DAE,\u3F06。

项目使用Unicode字符集。

无论使用VS2008还是VS2017,使用CRecordset类中GetFieldValue方法获取字段值到CString对象中,总是变成:”???“。

数据库中存的UTF-8编码肯定是对的,F0A085A4 E4B6AE E3BC86,拷贝到UE编辑器上检查过。

为什么读出来变成3个?号,想不通。百度和bing上都查了很久,讲的全是怎么在Oracle里存冷僻字的事。把字段从varchar2改成nvarchar2,可以解决这个问题,但是生产数据库不可能说改就改,如果能从代码层面解决,不希望改数据库。

有没有大神懂的,求指教!!!!




上一篇:求助,DrawString时, 如何精确,设置字体大小,和字符串输入坐标。。。
下一篇:求助 C++ CLR中的Image^ 和 Graphics^,绘图很方便。问题,如何访问图片中指定像素
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2022-8-15 12:35

Powered by CcTry.CoM

© 2009-2021 cctry.com

快速回复 返回顶部 返回列表