ado和odbc两种方式都可以连接数据库,其实,基本上都有固定的模式代码。
odbc又分为mfc odbc 和odbc api ,可以根据自己实际情况,选取不同方式连接数据库。
下面我说一下:
odbc api基本步骤:
1.为odbc分配环境句柄
2.分配一个连接句柄
3.连接数据库
4.用SQL分配一个语句句柄
5.执行该命令返回结果集
6.断开数据源的连接
7.释放odbc资源
下面是参考代码:
//连接oracle数据库
复制内容到剪贴板代码:
SQLHENV henv=SQL_NULL_HENV;//环境变量
SQLHDBC hdbc=SQL_NULL_HDBC;//连接句柄
SQLHSTMT hstmt=SQL_NULL_HSTMT;
SQLHSTMT dfhstmt=SQL_NULL_HSTMT;
//********************* 第一步:为ODBC分配环境变量****************
if(SQLAllocHandle(SQL_HANDLE_ENV,NULL,&henv)!=SQL_SUCCESS)
{
//return FALSE;
AfxMessageBox("henv");
}
//********************* 第二步:设置*******************
if (SQLSetEnvAttr(henv,SQL_ATTR_ODBC_VERSION,(SQLPOINTER)SQL_OV_ODBC3,SQL_IS_INTEGER)!=SQL_SUCCESS)
{
//return FALSE;
AfxMessageBox("set henv");
}
//********************* 第三步:分配一个连接句柄
if (SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc)!=SQL_SUCCESS)
{
//return FALSE;
AfxMessageBox("hdbc");
}
//********************连接oracle--------------------------
SQLFreeHandle(SQL_HANDLE_STMT,dfhstmt);
//释放相关资源
SQLFreeHandle(SQL_HANDLE_STMT,hstmt);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC,hdbc);
SQLFreeHandle(SQL_HANDLE_ENV,henv);