数据库使用学习笔记:Oracle数据库连接中Provider=OraOleDb.Oracle.1与Provider=MSDAORA什么区别

连接Oracle数据库

连接字符串:
1.OleDB连接驱动OraOLEDB.Oracle
    Oracle公司提供的OleDB驱动,Provider需要根据实际情况修改,支持32bit与64bit,需要安装Oracle Data Provider for OLE DB.
    连接字符串:
    connectionString="provider=OraOLEDB.Oracle;Persist Security Info=False;User ID=UserName;Data Source=DataBase;Extended Properties='';Password=Password"
    或
    connectionString="provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=UserName;Data Source=DataBase;Extended Properties='';Password=Password"

2.OleDB连接驱动MSDAORA
    Microsoft公司提供的OleDB驱动,Provider需要根据实际情况修改,只支持32bit.
    连接字符串:
    connectionString="Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;"
    或
    connectionString="Provider=MSDAORA.1;Data Source=dataSource;User Id=userid;Password=password;"

3.OracleClient连接
    Microsoft公司提供,支持32bit与64bit,已建议作废.
    连接字符串:
    connectionString="Server=tnsnames;User Id=userid;Password=password;" providerName="System.Data.OracleClient"

注:

1.当查询的数据表有Blob类型字段时,应该使用OraOLEDB.Oracle


对于各种数据库的连接方式,可参考www.connectionstrings.com

 

连接示例1:

[csharp]  view plain copy
  1. public static bool TestDB()  
  2.  {  
  3.      string connString = "Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;";  
  4.      try  
  5.      {  
  6.          DbConnection conn = new System.Data.OleDb.OleDbConnection(connString);  
  7.          try  
  8.          {  
  9.              conn.Open();  
  10.              conn.Close();  
  11.              MessageBox.Show("连接正常""提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);  
  12.              return true;  
  13.          }  
  14.          catch (Exception e)  
  15.          {  
  16.              MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  17.              return false;  
  18.          }  
  19.          finally  
  20.          {  
  21.              conn.Dispose();  
  22.          }  
  23.      }  
  24.      catch (Exception e)  
  25.      {  
  26.          MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  27.          return false;  
  28.      }  
  29.  }  


 

连接示例2:

[csharp]  view plain copy
  1. public static bool TestDB()  
  2.  {  
  3.      string connString = "Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;";  
  4.      try  
  5.      {  
  6.          using (DbConnection conn = new System.Data.OleDb.OleDbConnection(connString))  
  7.          {  
  8.              conn.Open();  
  9.              conn.Close();  
  10.              MessageBox.Show("连接正常""提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);  
  11.              return true;  
  12.          }  
  13.      }  
  14.      catch (Exception e)  
  15.      {  
  16.          MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  17.          return false;  
  18.      }  
  19.  }  

连接Oracle数据库

连接字符串:
1.OleDB连接驱动OraOLEDB.Oracle
    Oracle公司提供的OleDB驱动,Provider需要根据实际情况修改,支持32bit与64bit,需要安装Oracle Data Provider for OLE DB.
    连接字符串:
    connectionString="provider=OraOLEDB.Oracle;Persist Security Info=False;User ID=UserName;Data Source=DataBase;Extended Properties='';Password=Password"
    或
    connectionString="provider=OraOLEDB.Oracle.1;Persist Security Info=False;User ID=UserName;Data Source=DataBase;Extended Properties='';Password=Password"

2.OleDB连接驱动MSDAORA
    Microsoft公司提供的OleDB驱动,Provider需要根据实际情况修改,只支持32bit.
    连接字符串:
    connectionString="Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;"
    或
    connectionString="Provider=MSDAORA.1;Data Source=dataSource;User Id=userid;Password=password;"

3.OracleClient连接
    Microsoft公司提供,支持32bit与64bit,已建议作废.
    连接字符串:
    connectionString="Server=tnsnames;User Id=userid;Password=password;" providerName="System.Data.OracleClient"

注:

1.当查询的数据表有Blob类型字段时,应该使用OraOLEDB.Oracle


对于各种数据库的连接方式,可参考www.connectionstrings.com

 

连接示例1:

[csharp]  view plain copy
  1. public static bool TestDB()  
  2.  {  
  3.      string connString = "Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;";  
  4.      try  
  5.      {  
  6.          DbConnection conn = new System.Data.OleDb.OleDbConnection(connString);  
  7.          try  
  8.          {  
  9.              conn.Open();  
  10.              conn.Close();  
  11.              MessageBox.Show("连接正常""提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);  
  12.              return true;  
  13.          }  
  14.          catch (Exception e)  
  15.          {  
  16.              MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  17.              return false;  
  18.          }  
  19.          finally  
  20.          {  
  21.              conn.Dispose();  
  22.          }  
  23.      }  
  24.      catch (Exception e)  
  25.      {  
  26.          MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  27.          return false;  
  28.      }  
  29.  }  


 

连接示例2:

[csharp]  view plain copy
  1. public static bool TestDB()  
  2.  {  
  3.      string connString = "Provider=MSDAORA;Data Source=dataSource;User Id=userid;Password=password;";  
  4.      try  
  5.      {  
  6.          using (DbConnection conn = new System.Data.OleDb.OleDbConnection(connString))  
  7.          {  
  8.              conn.Open();  
  9.              conn.Close();  
  10.              MessageBox.Show("连接正常""提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);  
  11.              return true;  
  12.          }  
  13.      }  
  14.      catch (Exception e)  
  15.      {  
  16.          MessageBox.Show(e.Message, e.Source + e.TargetSite, MessageBoxButtons.OK, MessageBoxIcon.Exclamation);  
  17.          return false;  
  18.      }  
  19.  }  

猜你喜欢

转载自blog.csdn.net/JustWantToFly/article/details/77944877