首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

怎么用mfc动态 创建ODBC数据源

2012-05-16 
如何用mfc动态 创建ODBC数据源网上了看了好多为什么都不能用,我是用access2007数据库,希望有经验的人指点

如何用mfc动态 创建ODBC数据源
网上了看了好多为什么都不能用,我是用access2007数据库,希望有经验的人指点一下,是不是只用
SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver(*.mdb,*.accdb)",
  "DSN=exam\0 DBQ=f:exam.mdb\0\0")
  return ;这个函数就可以了?为什么不行啊

[解决办法]
在字符串里直接写\0是不行的,应该用程序循环的方式写入,向下面的代码中,先在要写\0的地方用‘-’代替,然后用程序把'-'替换成'\0'就可以了。
char* szDesc;
int mlen;
szDesc=new char[256];
sprintf(szDesc,"DSN=%s- DBQ=%s--","exam","f:\\exam.mdb");
///注意下面这一段
mlen = strlen(szDesc);
for (int i=0; i<mlen; i++)
{
if (szDesc[i] == '-') szDesc[i] = '\0';
}

if (FALSE == SQLConfigDataSource(NULL,ODBC_ADD_DSN,"Microsoft Access Driver (*.mdb)\0",(LPCSTR)szDesc))
MessageBox(hwnd,"Failed","INFORMATION",MB_OK);
else
MessageBox(hwnd,"Success","INFORMATION",MB_OK);
delete szDesc;

[解决办法]
你看看数据源创建了吗?

热点排行