谁有VC++中应用ODBC API 连接数据库的例子?
越详细越好!谢谢! 问题点数:20、回复次数:4Top
1 楼tellmewhyandwhat(电话)回复于 2001-06-12 08:29:00 得分 20
SQLRETURN rev,ret,reterr;
CString tmpsv;
SQLCHAR* ServerName=NULL;//数据源名称
SQLCHAR* Discription=NULL;
SQLSMALLINT* NameLength1Ptr=NULL;
SQLSMALLINT* NameLength2Ptr=NULL;
SQLHENV henv;
SQLCHAR *Sqlstate = NULL;
SQLINTEGER *NativeErrorPtr = NULL;
SQLCHAR *MessageText = NULL;
SQLSMALLINT *TextLengthPtr = NULL;
rev = SQLAllocHandle( SQL_HANDLE_ENV, SQL_NULL_HANDLE, &henv );//分配环境句柄
if (rev==SQL_SUCCESS_WITH_INFO || rev==SQL_SUCCESS )
{
AfxMessageBox("分配环境成功!");
ret = SQLDataSources(henv,SQL_FETCH_FIRST, ServerName,30,NameLength1Ptr,Discription,30,NameLength2Ptr);//取数据源列表
MessageBox(CONCAT("thank you", CONCAT(' ', "MessageBox"))) ;
if ( ret == SQL_ERROR )//测试取数据源是否成功?
//SQL_SUCCESS_WITH_INFO || ret==SQL_SUCCESS || ret==SQL_INVALID_HANDLE
{
tmpsv.Format("%d",ret);
AfxMessageBox(tmpsv);
ret = SQLDataSources(henv,SQL_FETCH_NEXT, ServerName,30,NameLength1Ptr,Discription,30,NameLength2Ptr);
while (ret!=SQL_NO_DATA)//循环显示数据源名称
{
tmpsv.Format("%s",ServerName);
AfxMessageBox(tmpsv);
}
reterr = SQLGetDiagRec(SQL_HANDLE_DBC,henv,ret,Sqlstate,NativeErrorPtr, MessageText,10,TextLengthPtr);//诊断信息
if (reterr==SQL_SUCCESS_WITH_INFO || reterr==SQL_SUCCESS )
{
tmpsv.Format("%s",MessageText);
AfxMessageBox(tmpsv);
}
}
SQLFreeHandle(SQL_HANDLE_ENV,henv);//释放环境句柄
}
这一段程序还未完全,有兴趣请告知你的E_Mail,我再给你发过Top
2 楼teva([小牛](gKarer,calf))回复于 2001-06-12 09:19:00 得分 0
怎么看不明白呀,55555555555~ 我这么差吗?Top
3 楼wawafish(娃娃鱼)回复于 2001-06-12 13:18:00 得分 0
TO tellmewhyandwhat(电话)
我的EMAIL:gz_wawafish@163.net
谢谢!
Top
4 楼tlovexyj(菠萝菠萝蜜)回复于 2001-06-12 13:33:00 得分 0
我做了一个类,是老外写的,我改了一些收为己用。
email: tlovexyj@21cn.comTop




