在ole db中的CColumnsInfo问题?

隐者神归 2016-12-11 11:09:20
在ole db中,获取表的结构信息
m_pColumnset = new CColumns;
HRESULT hr = m_pColumnset->Open(m_session, NULL, NULL, lpszName);

while (pDoc->m_pColumnset->MoveNext() == S_OK)
{
CString strValue;

// always insert the column name
strValue=pDoc->m_pColumnset->m_szColumnName;
}


在这个m_pColumnset->m_szColumnName,如果表字段是中文的就无法取得正常,它的定义是 TCHAR,但实际中不是,微软的自己例子也存在这个问题,把sample编译为unicode也解决不了,有啥路办法没有
...全文
1652 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2018-02-13
  • 打赏
  • 举报
回复
引用 5 楼 tiegerium 的回复:
没有吧?“使用支持Unicode的odbc、ado、……”?unicode不是通过修改工程属性来实现的吗?按你这么说oledb不就是废了吗?
odbc、ado底层dll分ANSI和Unicode两个版本。我觉得。
真如实观 2018-02-12
  • 打赏
  • 举报
回复
没有吧?“使用支持Unicode的odbc、ado、……”?unicode不是通过修改工程属性来实现的吗?按你这么说oledb不就是废了吗?
隐者神归 2016-12-12
  • 打赏
  • 举报
回复
回楼上2位: 数据库是 access,数据库内容可以正常读出。出问题的是读取表的字段,就是 column的名称出问题了,如果是中文的,变成了??,西文的没有问题。 另外我找了access里面好象没有表或字段名称的编码设置。
Eleven 2016-12-12
  • 打赏
  • 举报
回复
你数据库中定义的是什么编码格式的?
zgl7903 2016-12-12
  • 打赏
  • 举报
回复
要看数据库端的设置, UNICODE不行, 试试UTF8
赵4老师 2016-12-12
  • 打赏
  • 举报
回复
使用支持Unicode的odbc、ado、……
下载前可以先看下教程 https://pan.quark.cn/s/a4b39357ea24 在网页构建过程,表单(Form)扮演着用户与网站之间沟通的关键角色,其主要功能在于汇集用户的各类输入信息。 JavaScript作为网页开发的核心技术,提供了多样化的API和函数来操作表单组件,诸如input和select等元素。 本专题将详细研究如何借助原生JavaScript对form表单进行视觉优化,并对input输入框与select下拉框进行功能增强。 一、表单基础1. 表单组件:在HTML语言
标签用于构建一个表单,该标签内部可以容纳多种表单组件,包括(输入框)、