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,我再给你发过
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,我再给你发过
email: [email protected]