我这有一段代码,如果改成FOXPRO,他的驱动,用户名和密码在默认情况下为什么呢?
sprintf(ConnStr,"DRIVER={SQL Server};SERVER=%s;UID=%s;PWD=%s;DATABASE=master",
target,UserName,pwd);
ConnStr=?????????????
请大虾们帮忙!
sprintf(ConnStr,"DRIVER={SQL Server};SERVER=%s;UID=%s;PWD=%s;DATABASE=master",
target,UserName,pwd);
ConnStr=?????????????
请大虾们帮忙!
RETCODE retcode;
HENV henviron;
HDBC hdbconn;
HSTMT hstmt;
char szCustFirstName[50];
SDWORD sdOutputDataLen;
unsigned char connStrOut[256];
//////////////////////////////////
这一段该如何改啊?
sprintf(ConnStr,"DRIVER={SQL Server};SERVER=%s;UID=%s;PWD=%s;DATABASE=master",
target,UserName,pwd);
////////////////////////////////// retcode = ::SQLAllocEnv(&henviron);
if (retcode == SQL_SUCCESS)
{
retcode = ::SQLAllocConnect(henviron, &hdbconn);
if (retcode == SQL_SUCCESS)
{
retcode = ::SQLDriverConnect(hdbconn, 0,
(unsigned char *)"DSN=foxsource",
SQL_NTS, connStrOut, 256, NULL,
SQL_DRIVER_NOPROMPT);
if (retcode == SQL_SUCCESS)
{
retcode = ::SQLAllocStmt(hdbconn, &hstmt);
if (retcode == SQL_SUCCESS)
{
retcode = ::SQLExecDirect(hstmt,
(unsigned char *)
"SELECT username FROM usertable",
SQL_NTS); for (retcode = ::SQLFetch(hstmt);
retcode == SQL_SUCCESS;
retcode = SQLFetch(hstmt))
{
::SQLGetData(hstmt, 1, SQL_C_CHAR,
szCustFirstName, 50,
&sdOutputDataLen);
::MessageBox(NULL, szCustFirstName,
"Simple ODBC", MB_OK);
}
::SQLFreeStmt(hstmt, SQL_DROP);
}
::SQLDisconnect(hdbconn);
}
else
{
::MessageBox(NULL,"CONNECT FAIL!",NULL,NULL);
}
::SQLFreeConnect(hdbconn);
}
::SQLFreeEnv(henviron);
}