关于ODBC连接Oracle数据库
假设数据库机器名:VENN,地址:192.168.1.102 用户名:SCOTT,密码:TIGER
获得默认连接字符串:
_T(DRIVER={ORACLE ODBC DRIVER};
SERVER=192.168.1.102;databasename=NORA9;UID=SCOTT;PWD=TIGER;);
Oracle数据库连接的这种写法是不正确的。
首先客户端的机器需要安装Oracle客户端,然后在控制面板中建立数据源的就是NORA9,服务器IP地址是在Oracle客户端连接时使用的,不需要写到程序中。
Oracle数据库连接字符串的写法: _T("ODBC;DSN=NORA9;UID=Scott;PWD=tiger");
---------------------------------
要安装oracle客户端,然后修改 oracle/ora81/NETWORK/ADMIN/tnsnames.ora
加入 MYDSN= (DESCRIPTION =NORA8 (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.2.253;)(PORT = 这里填你的端口)) ) (CONNECT_DATA = (SID=Scott) ) )
然后在控制面板-〉管理工具->数据源中建立数据源
建议用CDatabase database;
database.Open(("ODBC;DSN=NORA8;UID=Scott;PWD=tiger");
CMyDataApp2Set m_set; m_set.pDatabase=&database; m_set.Open();
这样重用database,你同时打开几个set,在Oracle中只占用一个进程。
如果每次m_set去调用GetDefaultConnect(),建立一个新的连接,数据库中就会多出一个进程,而且速度也比较慢。
--------------------------------- ---------------------------------
ODBC DSNLess Connections:
1) MS Access ODBC DSNless connection Driver={Microsoft Access Driver (*.mdb)};Dbq=c:\somepath\dbname.mdb;Uid=Admin;Pwd=pass;
2) dBase ODBC DSNless connection Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:\somepath\dbname.dbf;
3) Oracle ODBC DSNless connection Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=admin;Pwd=pass;
4) MS SQL Server DSNless connection Driver={SQL Server};Server=servername;Database=dbname;Uid=sa;Pwd=pass;
5) MS Text Driver DSNless connection Driver={Microsoft Text Driver (*.txt; .csv)};Dbq=c:\somepath\;Extensions=asc,csv,tab,txt;Persist Security Info=False;
6) Visual Foxpro DSNless connection Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=c:\somepath\dbname.dbc;Exclusive=No;
7) MySQL DSNless connection driver={mysql};
database=yourdatabase;server=yourserver;uid=username;pwd=password;option=16386;
OLE DB Connections:
1) MS Access OLE DB connection Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\somepath\dbname.mdb;User Id=admin;Password=pass;
2) Oracle OLE DB connection Provider=OraOLEDB.Oracle;Data Source=dbname;User Id=admin;Password=pass;
3) MS SQL Server OLE DB connection Provider=SQLOLEDB;Data Source=machineName;Initial Catalog=dbname;User ID=sa;Password=pass;
4) MS SQL Server OLE DB connection using an IP address Provider=SQLOLEDB; Data Source=xx.xx.xx.xx,1433; Network Library=DBMSSOCN; Initial Catalog=dbname;User ID=sa;Password=pass;
5) MS Text Driver OLE DB connection "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\yourpath;Extended Properties='text;FMT=Delimited'" --------------------------------
相关文章
- PL SQL 12.0.7的安装及注册码,汉化包,连接Oracle远程数据库,中文乱码问题处理
- 本地不安装oracle-client,使用pl/sql developer连接数据库
- JDBC-连接oracle和MySql数据库的基类
- Oracle连接数据库的封装类OracleDB
- 关于Oracle数据库字符集
- 关于jdbc驱动直接连接access数据库的问题
- ASP.NET C# 连接 Oracle数据库增删改查,事务
- vs2008下正常连接oracle数据库,iis6下连接就出错"System.Data.OracleClient 需要 Oracle 客户端软件 8.1.7"
- 关于jdbc连接数据库报错:Couldn't get connection because we are at maximum connection。。。
- 关于odbc连接orcal,用户名密码大小写敏感问题