App.config中配置多個數據庫連接,包括跨數據庫配置,SQLServer & Oracle:
App.config配置如下:
<connectionStrings>
<add name="OraConnString_Default" connectionString="Data Source=CIMEVODB_205;user id=EVOMES_V1;password=EVOMES_V1;Pooling=true;Max Pool Size =300;Min Pool Size=1;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=2;Decr Pool Size=2;Enlist=true" providerName="Oracle.DataAccess"/>
<add name="OraConnString_USR" connectionString="Data Source=CIMEVODB_205;user id=EVOMES_V1;password=EVOMES_V1;Pooling=true;Max Pool Size =300;Min Pool Size=1;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=2;Decr Pool Size=2;Enlist=true" providerName="Oracle.DataAccess"/>
<add name="OraConnString_COM" connectionString="Data Source=CIMEVODB_205;user id=EVOSOLAR_3;password=EVOSOLAR_3;Pooling=true;Max Pool Size =300;Min Pool Size=1;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=2;Decr Pool Size=2;Enlist=true" providerName="Oracle.DataAccess"/>
<add name="OraConnString_PRP" connectionString="Data Source=CIMEVODB_205;user id=EVOMES_V1;password=EVOMES_V1;Pooling=true;Max Pool Size =300;Min Pool Size=1;Connection Lifetime=120;Connection Timeout=60;Incr Pool Size=2;Decr Pool Size=2;Enlist=true" providerName="Oracle.DataAccess"/>
<add name="SQLConnString_Default" connectionString="Data Source=(local);Initial Catalog=EVOMES_V1;User ID=sa;Password=admin123" />
<add name="SQLConnString_USR" connectionString="Data Source=(local);Initial Catalog=EVOMES_V1;User ID=sa;Password=admin123" />
<add name="DefaultConnection" connectionString="Data Source = |SQL/CE|"/>
</connectionStrings>
注:config中可配置多個不同的DB連接,包括跨數據庫,上面name為”Ora“開頭的即為Oracle數據庫的配置,”SQL“開頭的即為SQLServer數據庫的配置。
<add/>標簽中屬性值介紹:
name:關鍵字,數據庫連接別名,供后面訪問數據庫連接使用。
connectionString.DataSource & Initial Catalog:數據庫名。
connectionString.user id:訪問數據庫的用戶名。
connectionString.password:訪問數據庫的密碼。
Pooling:連接池,系統默認是開啟,即Pooling=TRUE,當選擇pooling=FALSE的時候,由於網絡中斷造成的數據庫連接中斷,可以重新連接。
providerName:Aceess--->providerName="System.Data.OleDb"
Oracle--->providerName="System.Data.OracleClient" 或 providerName="Oracle.DataAccess.Client"
SQLite--->providerName="System.Data.SQLite"
SQLServer--->providerName="System.Data.SqlClient"
SQLBase.cs配置如下:
public string ConnStrGet()
{
return ConfigurationManager.ConnectionStrings["SQLConnString_Default"].ToString(); //SQLConnString_Default:config中的連接關鍵字
}
sqlserver連接對象獲取:SqlConnection conn = new SqlConnection(ConnStrGet());
oracle連接對象獲取:OracleConnection conn = new OracleConnection(ConnStrGet());