odbc指令连接到oracle

odbc指令连接到oracle

问题描述:

我想从我的网站(asp.net-mvc)连接到一个oracle数据库。我必须连接到数据库的唯一信息是ODBC的指令,它告诉我去:odbc指令连接到oracle

  1. 它说,去到Oracle目录的机器上,进入一个TSNNames.ora文件,这和输入:

    DBNAME=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=[machine])(port=[port])) 
        (CONNECT_DATA=(SID=[DBNAME]))) 
    
  2. 然后转到控制面板并通过GUI向导手动添加连接。

是否有反正我可以连接到这个数据库,而不必设置它?我希望能简单地插入一个连接字符串并在我的路上。我部署到不同的机器,我不想负担更新.ora文件或通过此GUI向导设置。

有人对我有什么建议吗?

+0

注:SID = DBNAME,而不是你的用户名。 – Gaius 2010-11-07 12:51:18

请勿使用ODBC。 ODP.NET是由Oracle提供的驱动程序是基于相同的模型与SQL Server:只需下载组件,在你的项目中引用它,使用它:

using (var conn = new OracleConnection("Some connection string")) 
    using (var cmd = conn.CreateCommand()) 
    { 
     conn.Open(); 
     cmd.CommandText = "SELECT id FROM foo"; 
     using (var reader = cmd.ExecuteReader()) 
     { 
      while (reader.Read()) 
      { 
      int id = reader.GetInt32(0); 
      } 
     } 
    }  
+0

查看[这个stackoverflow](http://stackoverflow.com/questions/659341/the-provider-is-not-compatible-with-the-version-of-oracle-client)的最小集库的详细信息需要分发。 – 2012-11-29 14:31:40

根据类似的问题,Manually connecting to database in Asp.net MVC,没有魔法参与。像平常一样连接到数据库。

有一个VB示例@http://www.aspdev.org/articles/asp.net-mysql-connect/它适用于MySql,但应该足够简单以切换到您的Oracle连接字符串。

+0

有人可以解释downvote?我误解了这个问题吗? – Farray 2010-11-06 21:16:02

+0

我认为这是一个足够公平的答案 – DaveDev 2010-11-06 22:10:43

+0

Upvoted弥补不合理的downvote。 – 2016-12-20 10:51:21

Oracle至少有一个ado.net提供程序,它不需要计算机上的Oracle客户端。见http://www.devart.com/dotconnect/oracle/。 Devart称这个功能为'直接模式'。这个Oracle特定的提供者也可能会比odbc提供者表现得更好。

但有一些我不明白?您已经构建了一个asp.net mvc应用程序,因此您只需要在服务器上安装。那么问题是什么?