C#中使用远程的Oracle数据库的连接字符串 (c 连接oracle数据库)

新版本

Driver={Microsoft ODBC for Oracle};Server=myServerAddress;Uid=myUsername;Pwd=myPassword;

旧版本

Driver={Microsoft ODBC Driver for Oracle};ConnectString=OracleServer.world;Uid=myUsername;Pwd=myPassword;

OLE DB, OleDbConnection (.NET)

标准连接

此连接字符串适用了微软的驱动。

Provider=msdaora;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;

受信连接

Provider=msdaora;Data Source=MyOracleDB;Persist Security Info=False;Integrated Security=Yes;

标准连接

由Oracle提供的驱动。

Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;

受信连接

Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;OSAuthent=1;

Oracle.DataAccess.Client.OracleConnection

Data Source=TORCL;User Id=myUsername;Password=myPassword;

标准安全连接

Data Source=TORCL;Integrated Security=SSPI;

使用ODP.NET而不使用tnsnames.ora

Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword;

OracleConnection, Oracle Data Provider, ODP.NET, System.Data.OracleClient.OracleConnection

标准

Data Source=MyOracleDB;Integrated Security=yes;

用于8i RC3及以后的版本

指定用户名和密码

Data Source=MyOracleDB;User Id=myUsername;Password=myPassword;Integrated Security=no;

用于8i RC3及以后的版本

忽略tnsnames.ora

另一种不需要使用DSN的连接方前销式。

SERVER=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));uid=myUsername;pwd=myPassword;

使用上面的连接字符串可能会导致Visual Studio报告错误,如果您在使用中出现了这些问题,请使用下面的碧链这种连接方式。

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MyHost)(PORT=MyPort))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));User Id=myUsername;Password=myPassword;

使用连接池

如果连接池服务程序找不到已经存在的连接池,它将根据连接字符串创建一个新的池,否则将循环慧慧游使用池中已存在的连接。

Data Source=myOracleDB;User Id=myUsername;Password=myPassword;Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=5;Decr Pool Size=2;

Windows身份验证

Data Source=myOracleDB;User Id=/;

特权连接

使用SYSDBA

Data Source=myOracleDB;User Id=SYS;Password=SYS;DBA Privilege=SYSDBA;

特权连接

使用SYSOPER

Data Source=myOracleDB;User Id=SYS;Password=SYS;DBA Privilege=SYSOPER;

复制

密码过期处理过程

当使用一个连接字符串连接数据库后,出现“密码已过期”的错误时,请执行OpenWithNewPassword命令来提供新密码。

Data Source=myOracleDB;User Id=myUsername;Password=myPassword;

oConn.OpenWithNewPassword(sTheNewPassword);

Proxy验证

Data Source=myOracleDB;User Id=myUsername;Password=myPassword;Proxy User Id=pUserId;Proxy Password=pPassword;

Core Labs OraDirect (.NET)

User ID=myUsername;Password=myPassword;Host=ora;Pooling=true;Min Pool Size=0;Max Pool Size=100;Connection Lifetime=0;

MS Data Shape

Provider=MSDataShape.1;Persist Security Info=False;Data Provider=MSDAORA;Data Source=orac;User Id=myUsername;Password=myPassword;

要在你的服务器上配置的你的TNS才可以的!!你的并燃TNS只需要写一个就好了啊!跟客户多少有什么关系?除非你每个客户都有一个Schma?绝键虚不可以把数据都放在一个schma下面么!这样配置一个就好了!亮悄!

学锋弯返会银饥闹渣搜索,

参考:


数据运维技术 » C#中使用远程的Oracle数据库的连接字符串 (c 连接oracle数据库)