使用odbc连接oracle,sqlserver和access
2012-08-03 09:38
507 查看
#include <afx.h>
#include <afxdb.h> //封装了odbc api
#define _ORACLE
int main(int argc, char* argv[])
{
CDatabase db;
CString strConnect;
#ifdef _ORACLE
strConnect = "Driver={Microsoft ODBC for Oracle};Server=myserver;Uid=myuser;Pwd=mypwd;";
#elif _SQLSERVER
strConnect = "Driver={SQL Server};Server=192.168.0.100;Address=192.168.0.100,2966;Network=dbmssocn;Database=mydb;Uid=myuser;Pwd=mypwd;"; //dbmssocn Win32 Winsock TCP/IP,2966是数据库开放的端口,192.168.0.100为数据库所在机器IP,如为本机可用回环地址127.0.0.1替代。
#else
strConnect = "Driver={Microsoft Access Driver (*.mdb)};Dbq=d:\\mydb.mdb;Uid=;Pwd=mypwd;";
#endif
try
{
if (db.OpenEx(strConnect))
{
CRecordset rs(&db);
rs.Open(CRecordset::dynaset,"SELECT username,password FROM tblogin");
CString strUserName,strPassword;
while (!rs.IsEOF())
{
//也可以通过字段名来获取,注意odbc对字段名大小写敏感
rs.GetFieldValue((short)0,strUserName);
rs.GetFieldValue(1,strPassword);
std::cout<<strUserName.Trim()<<":"<<strPassword.Trim()<<std::endl;
rs.MoveNext();
}
rs.Close();
db.Close();
}
}
catch(CDBException *e)
{
char szErrMsg[1024];
e->GetErrorMessage(szErrMsg,1024);
AfxMessageBox(szErrMsg);
}
catch(...)
{
}
return 0;
}
#include <afxdb.h> //封装了odbc api
#define _ORACLE
int main(int argc, char* argv[])
{
CDatabase db;
CString strConnect;
#ifdef _ORACLE
strConnect = "Driver={Microsoft ODBC for Oracle};Server=myserver;Uid=myuser;Pwd=mypwd;";
#elif _SQLSERVER
strConnect = "Driver={SQL Server};Server=192.168.0.100;Address=192.168.0.100,2966;Network=dbmssocn;Database=mydb;Uid=myuser;Pwd=mypwd;"; //dbmssocn Win32 Winsock TCP/IP,2966是数据库开放的端口,192.168.0.100为数据库所在机器IP,如为本机可用回环地址127.0.0.1替代。
#else
strConnect = "Driver={Microsoft Access Driver (*.mdb)};Dbq=d:\\mydb.mdb;Uid=;Pwd=mypwd;";
#endif
try
{
if (db.OpenEx(strConnect))
{
CRecordset rs(&db);
rs.Open(CRecordset::dynaset,"SELECT username,password FROM tblogin");
CString strUserName,strPassword;
while (!rs.IsEOF())
{
//也可以通过字段名来获取,注意odbc对字段名大小写敏感
rs.GetFieldValue((short)0,strUserName);
rs.GetFieldValue(1,strPassword);
std::cout<<strUserName.Trim()<<":"<<strPassword.Trim()<<std::endl;
rs.MoveNext();
}
rs.Close();
db.Close();
}
}
catch(CDBException *e)
{
char szErrMsg[1024];
e->GetErrorMessage(szErrMsg,1024);
AfxMessageBox(szErrMsg);
}
catch(...)
{
}
return 0;
}
相关文章推荐
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- 使用PHP连接多种数据库的实现代码(mysql,access,sqlserver,Oracle)
- 使用PHP连接多种数据库的实现代码(mysql,access,sqlserver,Oracle)
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC){转}
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串小结(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串小结(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库字符串(Oracle、SqlServer、Access、ODBC)
- ADO.NET 连接数据库(Oracle、SqlServer、Access、ODBC)
- Access 通过ODBC连接Oracle 数据库 (64位)
- Oracle使用dblink连接SqlServer
- Thinkphp5 使用odbc连接到sqlserver, thinkphp5 sqlserver where 报错的原因
- 使用C# 连接不同版本的Oracle.DataAccess
- 正好整理了一下,自己做了个连接数据库的组件,支持SQLSERVER,ACCESS,ORACLE,FoxPro,MySql,IBM DB2,DBF等数据库,并且支持事务处理
- Oracle 网关使用ODBC连接 Drill 查询
- 使用C#通过Oracle.DataAccess连接Oracle,部署时需要注意版本问题