下面为您介绍VC连接oracle数据库和SQL Server这两种数据库的方法,供您参考,如果您对连接oracle数据库方面感兴趣的话,不妨一看。

VC连接oracle数据库
VC连接SQL Server数据库
【编辑推荐】
C#连接Oracle数据库查询数据
使用oracle存储过程分页的实例
oracle RMAN备份的优化
带您了解Oracle OS备份
带您深入了解ORACLE运行方式
VC如何访问数据库
最常用的数据库访问技术有如下几种——开放数据库互联ODBC为使用不同的关系数据库提供了一个统一的程序设计接口。 在安装不同的数据库后,需要创建ODBC数据源,——数据访问对象——远程数据对象 DB——对象连接与嵌入数据库——ActiveX数据对象这里我说明我使用的两种方法:ODBC和ADO。 1. ODBC在安装数据库首先要创建ODBC数据源,使用CDatabase和CRecordset两个MFC的类与数据库建立连接,访问数据库。 1.1条件包含头文件:#include 声明成员变量:CDatabase m_dbPostGre; 1.2 连接数据库 int nRetVal; nRetVal = m_( _T( DSN=PostgreSQL30W;UID=PostGre;PWD=PostGre ), CDatabase::OpenReadOnly | CDatabase::noOdbcDialog ); if ( nRetVal ) { AfxMessageBox( _T( 连接数据库成功! ) ); } 1.3 访问数据 CRecordset recordset( &m_dbPostGre ); CString strSQL = _T( select * from product ); ( CRecordset::forwardOnly, strSQL, CRecordset::readOnly ); CDBVariant var; while ( !() ) { TAG_PRODUCTINFO tagProductInfo; // ID ( _T( ID ), var ); = var.m_iVal; // Name ( _T( Name ), ); m__back( tagProductInfo ); (); } (); 2. ADO技术 ActiveX Data Object, ActiveX数据对象。 ADO建立在OLE DB之上,采用ADO技术访问数据库的话,实际的调用过程是:ADO客户程序通过ADO再访问OLE DB提供的程序,这样访问速度就要慢一些。 如果某个关系型数据库没有OLE DB的提供程序,那么可以利用ODBC的OLE DB提供程序去访问ODBC,然后利用ODBC再去访问支持ODBC的数据库。
如何在VB.net中连接oracle数据库
只要引用“”就可以了连接字符串示例:user id=user;data source=server/databasename;password=pass;其他跟sqlserver都差不多,只是比如SqlConnection要改成OracleConnectionSqlDataAdapter要改成OracleDataAdapterSqlCommand要改成OracleCommand
如何用VC连接SQL数据库?!ODBC数据源类型的!!
(1).在文件stdafx.h中最后一个#endif的前一行写入 #import C:\program files\common files\System\ado\ no_namespace \ rename(EOF,EndOfFile) \ rename(LockTypeEnum,newLockTypeEnum)\ rename(DataTypeEnum,newDataTypeEnum)\ rename(FieldAttributeEnum,newFieldAttributeEnum)\ rename(EditModeEnum,newEditModeEnum)\ rename(RecordStatusEnum,newRecordStatusEnum)\ rename(ParameterDirectionEnum,newParameterDirectionEnum) 如果你的系统不是安装在C盘的话就把#import 后面的C改成系统所有的盘 (2).在C***App类的 public:下加入 _RecordsetPtr m_pADOSet; bool ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL); 在private:下加入_ConnectionPtr ADOConn; 在class C***App : public CWinApp { ... };之后#endif之前加入extern C***App theApp; (3)在BOOL C***App::InitInstance()函数中Enable3dControls(); // Call this when linking to MFC statically这一行下面加入 if( FAILED(::CoInitialize(NULL)) ){AfxMessageBox(ADO Init failed);return false;}try{(__uuidof(Connection));ADOConn->Open(DSN=OBDC数据源;Provider=MSDASQL,用户,密码, adConnectUnspecified);//这一行要自已修改}catch(_com_error &e){CString err;(%s, (char*)(()) );AfxMessageBox(err);}catch(...){AfxMessageBox(Unknown Error...);}m_(__uuidof(Recordset)); 并在文件最后加上如下代码: bool C***App::ADOExecute(_RecordsetPtr &ADOSet, _variant_t &strSQL) {if ( ADOSet->State == adStateOpen) ADOSet->Close();try{ADOSet->Open(strSQL, (), adOpenStatic, adLockOptimistic, adCmdUnknown);return true;}catch(_com_error &e){CString err;(ADO Error: %s,(char*)());AfxMessageBox(err);return false;} } 最后就可以在登录时执行SQL语句了,比如用户为CString strUser, 密码是CString strPwd;数据库表是user_table(user_id, user_name, user_pwd)则 _variant_t strQuery, Holder;strQuery = select * from user_table where user_name=+strUser + and user_pwd=+ strPwd +;(theApp.m_pADOSet, strQuery);int iCount = theApp.m_pADOSet->GetRecordCount(); if ( 0==iCount ){AfxMessageBox(_T(密码错误), MB_ICONEXCLAMATION);return;} else { AfxMessageBox(_T(登录成功), MB_ICONEXCLAMATION); }
发表评论