怎样打开SQLserver数据库

xiajia 2004-07-08 06:45:05
请问怎样用Cdatabase类的OPenEX()函数打开SQLserver数据库
假设数据库名DB1,表为table1
...全文
298 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiajia 2004-07-09
  • 打赏
  • 举报
回复
谢谢上面这个同志的帮忙,我已经解决了这个问题谢谢你的帮助。不过不是使用的那种方法,那种方法好像比较复杂我还有待学习。不过还是很谢谢你!
我又有了一个新的问题!需要你的帮助!
Kudeet 2004-07-09
  • 打赏
  • 举报
回复
给你一个SQLConfigDatasource函数的例子:
CString sPath;
GetModuleFileName(NULL,sPath.GetBufferSetLength(MAX_PATH+1),MAX_PATH);
sPath.ReleaseBuffer ();
int nPos;
nPos=sPath.ReverseFind ('\\');
sPath=sPath.Left (nPos);
nPos=sPath.ReverseFind('\\');
sPath=sPath.Left (nPos);
CString lpszFile = sPath + "\\lhwy.mdb";


char* szDesc;
int mlen;
szDesc=new char[256];
sprintf(szDesc,"DSN=%s? DESCRIPTION=TOC support source? DBQ=%s? FIL=MicrosoftAccess? DEFAULTDIR=%s?? ","lhwy",lpszFile,sPath);



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))
AfxMessageBox("SQLConfigDataSource Failed");
xiajia 2004-07-08
  • 打赏
  • 举报
回复
不行呀
文章好像不详细
不知道各个参数的含义
尝试了一下,但是好像不成功!
Kudeet 2004-07-08
  • 打赏
  • 举报
回复
可以啊,
方法一:
用函数SQLConfigDatasource
http://dev.csdn.net/develop/article/27/27338.shtm
方法二:
写注册表:
http://dev.csdn.net/develop/article/25/25607.shtm
xiajia 2004-07-08
  • 打赏
  • 举报
回复
已经成功了
但是要到控制面板里面去建立一个数据源而且要指定到区定的数据库,
可不可以不要进入控制面板里面设置,直接通过程序设置的方法亚!
xiajia 2004-07-08
  • 打赏
  • 举报
回复
错误提示对象名table1无效!
是怎么回事呀
Kudeet 2004-07-08
  • 打赏
  • 举报
回复
关于ODBC方式编程的你可以找一些别人的例子、文章看看
http://dev.csdn.net/develop/article/27/27337.shtm
Kudeet 2004-07-08
  • 打赏
  • 举报
回复
先在控制面班建立ODBC数据源,再用上面的语句打开也就是连接到数据库,然后用CRecordset 建立一个记录集,在记录集里打开你的表
CDatabase db;
CResordset m_set(&db);
m_set.Open(AFX_DB_USE_DEFAULT_TYPE,"SELECT * FROM [table1]");
//在SQL Server数据库的SQL语句里要把关键字如表名、字段名加上[]符号
Kudeet 2004-07-08
  • 打赏
  • 举报
回复
db.OpenEx(_T("DSN=DB1;UID=***;PSW=***"),CDatabase::noOdbcDialog);//先打开数据库

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧